Re: [PATCH] dma-buf/fence: Fix lock inversion within dma-fence-array

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Quoting Chris Wilson (2017-11-14 16:27:19)
> Ages ago Rob Clark noted,
> 
> "Currently with fence-array, we have a potential deadlock situation.  If
> we fence_add_callback() on an array-fence, the array-fence's lock is
> acquired first, and in it's ->enable_signaling() callback, it will install
> cbs on it's array-member fences, so the array-member's lock is acquired
> second.
> 
> But in the signal path, the array-member's lock is acquired first, and
> the array-fence's lock acquired second."
> 
> Rob proposed either extensive changes to dma-fence to unnest the
> fence-array signaling, or to defer the signaling onto a workqueue. This
> is a more refined version of the later, that should keep the latency
> of the fence signaling to a minimum by using an irq-work, which is
> executed asap.
> 
> Reported-by: Rob Clark <robdclark@xxxxxxxxx>
> Suggested-by: Rob Clark <robdclark@xxxxxxxxx>

Testcase: igt/sw_sync/sync_multi_timeline_wait

> References: 1476635975-21981-1-git-send-email-robdclark@xxxxxxxxx
> Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
> Cc: Rob Clark <robdclark@xxxxxxxxx>
> Cc: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
> Cc: Sumit Semwal <sumit.semwal@xxxxxxxxxx>
> Cc: Christian König <christian.koenig@xxxxxxx>
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux