Commit 59432439 authored by Christian König's avatar Christian König
Browse files

dma-buf: use inline lock for the dma-fence-array



Using the inline lock is now the recommended way for dma_fence
implementations.

So use this approach for the framework's internal fences as well.

Also saves about 4 bytes for the external spinlock.

Signed-off-by: default avatarChristian König <christian.koenig@amd.com>
Reviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@igalia.com>
Reviewed-by: default avatarPhilipp Stanner <phasta@kernel.org>
Reviewed-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
Link: https://lore.kernel.org/r/20260219160822.1529-8-christian.koenig@amd.com
parent ed0d6a00
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -204,9 +204,8 @@ void dma_fence_array_init(struct dma_fence_array *array,

	array->num_fences = num_fences;

	spin_lock_init(&array->lock);
	dma_fence_init(&array->base, &dma_fence_array_ops, &array->lock,
		       context, seqno);
	dma_fence_init(&array->base, &dma_fence_array_ops, NULL, context,
		       seqno);
	init_irq_work(&array->work, irq_dma_fence_array_work);

	atomic_set(&array->num_pending, signal_on_any ? 1 : num_fences);
+0 −1
Original line number Diff line number Diff line
@@ -38,7 +38,6 @@ struct dma_fence_array_cb {
struct dma_fence_array {
	struct dma_fence base;

	spinlock_t lock;
	unsigned num_fences;
	atomic_t num_pending;
	struct dma_fence **fences;