On 7/24/23 11:34, PHO wrote:
if (!list_empty(&to_put)) { spin_unlock(&fman->lock); list_for_each_entry_safe(fence, next_fence, &to_put, head) { list_del_init(&fence->head); dma_fence_put(&fence->base); } spin_lock(&fman->lock); }
I pasted a wrong version. Actually this: while ((fence = list_first_entry_or_null( &to_put, typeof(*fence), head)) != NULL) { list_del_init(&fence->head); spin_unlock(&fman->lock); dma_fence_put(&fence->base); spin_lock(&fman->lock); }