kernel_samsung_a53x/drivers/dma-buf
Christian König 5d4514a9dc dma-buf: fix dma_fence_array_signaled v4
commit 78ac1c3558810486d90aa533b0039aa70487a3da upstream.

The function silently assumed that signaling was already enabled for the
dma_fence_array. This meant that without enabling signaling first we would
never see forward progress.

Fix that by falling back to testing each individual fence when signaling
isn't enabled yet.

v2: add the comment suggested by Boris why this is done this way
v3: fix the underflow pointed out by Tvrtko
v4: atomic_read_acquire() as suggested by Tvrtko

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Tested-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12094
Cc: <stable@vger.kernel.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20241112121925.18464-1-christian.koenig@amd.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-12-17 13:24:29 +01:00
..
heaps Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dma-buf-sysfs-stats.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dma-buf-sysfs-stats.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dma-buf.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dma-fence-array.c dma-buf: fix dma_fence_array_signaled v4 2024-12-17 13:24:29 +01:00
dma-fence-chain.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dma-fence.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dma-heap.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dma-resv.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
selftest.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
selftest.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
selftests.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
seqno-fence.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
st-dma-fence-chain.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
st-dma-fence.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sw_sync.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sync_debug.c dma-buf/sw-sync: don't enable IRQ from sync_print_obj() 2024-11-19 12:27:10 +01:00
sync_debug.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sync_file.c dma-buf/sync_file: Speed up ioctl by omitting debug names 2024-11-19 17:53:23 +01:00
sync_trace.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
udmabuf.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00