In a similar fashion to reservation_object_lock() and reservation_object_unlock(), ww_mutex_trylock is also useful and so is worth wrapping for consistency.
v2: Add __must_check Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> Cc: Sumit Semwal <sumit.sem...@linaro.org> Cc: Joonas Lahtinen <joonas.lahti...@linux.intel.com> Cc: Daniel Vetter <daniel.vet...@ffwll.ch> Reviewed-by: Joonas Lahtinen <joonas.lahti...@linux.intel.com> --- include/linux/reservation.h | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/include/linux/reservation.h b/include/linux/reservation.h index 24da961b085d..dcac9a4d9bad 100644 --- a/include/linux/reservation.h +++ b/include/linux/reservation.h @@ -151,6 +151,26 @@ reservation_object_lock(struct reservation_object *obj, } /** + * reservation_object_trylock - trylock the reservation object + * @obj: the reservation object + * + * Tries to lock the reservation object for exclusive access and modification. + * Note, that the lock is only against other writers, readers will run + * concurrently with a writer under RCU. The seqlock is used to notify readers + * if they overlap with a writer. + * + * Also note that since no context is provided, no deadlock protection is + * possible, see ww_mutex_trylock(). + * + * Returns true if the lock was acquired, false otherwise. + */ +static inline __must_check bool +reservation_object_trylock(struct reservation_object *obj) +{ + return ww_mutex_trylock(&obj->lock); +} + +/** * reservation_object_unlock - unlock the reservation object * @obj: the reservation object * -- 2.11.0 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx