On Wed Aug 27, 2025 at 3:38 PM CEST, Alice Ryhl wrote: > #ifdef CONFIG_LOCKDEP > -/** > - * drm_gem_gpuva_set_lock() - Set the lock protecting accesses to the gpuva > list. > - * @obj: the &drm_gem_object > - * @lock: the lock used to protect the gpuva list. The locking primitive > - * must contain a dep_map field. > - * > - * Call this if you're not proctecting access to the gpuva list with the > - * dma-resv lock, but with a custom lock. > - */ > -#define drm_gem_gpuva_set_lock(obj, lock) \ > - if (!WARN((obj)->gpuva.lock_dep_map, \ > - "GEM GPUVA lock should be set only once.")) \ > - (obj)->gpuva.lock_dep_map = &(lock)->dep_map > -#define drm_gem_gpuva_assert_lock_held(obj) \ > - lockdep_assert((obj)->gpuva.lock_dep_map ? \ > - lock_is_held((obj)->gpuva.lock_dep_map) : \ > +#define drm_gem_gpuva_assert_lock_held(gpuvm, obj) \ > + lockdep_assert(drm_gpuvm_immediate_mode(gpuvm) ? \ > + lock_is_held(&(obj)->gpuva.lock.dep_map) : \
NIT: I think this can just be: lockdep_is_held(&(obj)->gpuva.lock) If you want I can fix it up on apply. > dma_resv_held((obj)->resv)) > #else > -#define drm_gem_gpuva_set_lock(obj, lock) do {} while (0) > -#define drm_gem_gpuva_assert_lock_held(obj) do {} while (0) > +#define drm_gem_gpuva_assert_lock_held(gpuvm, obj) do {} while (0) > #endif