drm/syncobj: make lockdep complain on WAIT_FOR_SUBMIT v3
authorChristian König <christian.koenig@amd.com>
Fri, 15 Jan 2021 13:32:39 +0000 (14:32 +0100)
committerChristian König <christian.koenig@amd.com>
Wed, 20 Jan 2021 14:05:45 +0000 (15:05 +0100)
commit7621350c6bb20fb6ab7eb988833ab96eac3dcbef
tree24929d0358a69f7b0a0f65cfa09b41b4687c2ed8
parentf987c9e0f537222e90dd3214bfc481860fe2abe0
drm/syncobj: make lockdep complain on WAIT_FOR_SUBMIT v3

DRM_SYNCOBJ_WAIT_FLAGS_WAIT_FOR_SUBMIT can't be used when we hold locks
since we are basically waiting for userspace to do something.

Holding a lock while doing so can trivial deadlock with page faults
etc...

So make lockdep complain when a driver tries to do this.

v2: Add lockdep_assert_none_held() macro.
v3: Add might_sleep() and also use lockdep_assert_none_held() in the
    IOCTL path.

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://patchwork.freedesktop.org/patch/414944/
drivers/gpu/drm/drm_syncobj.c
include/linux/lockdep.h