]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
driver core: Add conditional guard support for device_lock()
authorLi Ming <ming.li@zohomail.com>
Tue, 10 Mar 2026 15:57:53 +0000 (23:57 +0800)
committerDanilo Krummrich <dakr@kernel.org>
Thu, 12 Mar 2026 21:41:02 +0000 (22:41 +0100)
Introduce conditional guard version of device_lock() for scenarios that
require conditional device lock holding.

Suggested-by: Dan Williams <dan.j.williams@intel.com>
Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Li Ming <ming.li@zohomail.com>
Link: https://patch.msgid.link/20260310-fix_access_endpoint_without_drv_check-v1-1-94fe919a0b87@zohomail.com
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
include/linux/device.h

index 0be95294b6e61577b43b489d84d8c5a391d73f66..4fafee80524bb55b890e5dc5528ac4f737b59f18 100644 (file)
@@ -911,6 +911,7 @@ static inline void device_unlock(struct device *dev)
 }
 
 DEFINE_GUARD(device, struct device *, device_lock(_T), device_unlock(_T))
+DEFINE_GUARD_COND(device, _intr, device_lock_interruptible(_T), _RET == 0)
 
 static inline void device_lock_assert(struct device *dev)
 {