[PATCH] dma-buf/sync_file: Increment refcount of fence when all are signaled.

Gustavo Padovan gustavo at padovan.org
Thu Sep 15 13:49:33 UTC 2016


Hi Rafael,

2016-09-14 Rafael Antognolli <rafael.antognolli at intel.com>:

> When we merge several fences, if all of them are signaled already, we
> still keep one of them. So instead of using add_fence(), which will not
> increase the refcount of signaled fences, we should explicitly call
> fence_get() for the fence we are keeping.
> 
> This patch fixes a kernel panic that can be triggered by creating a fence that
> is expired (or increasing the timeline until it expires), then creating a
> merged fence out of it, and deleting the merged fence. This will make the
> original expired fence's refcount go to zero.
> 
> Signed-off-by: Rafael Antognolli <rafael.antognolli at intel.com>
> ---
>  drivers/dma-buf/sync_file.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)

Yes, mention the igt test case would be good.

Otherwise:

Reviewed-by: Gustavo Padovan <gustavo.padovan at collabora.co.uk>

Gustavo


More information about the dri-devel mailing list