On Tue, Aug 13, 2024 at 03:42:11PM -0700, Amit Sunil Dhamne wrote: > There can be multiple role switch devices running on a platform. Given > that lockdep is not capable of differentiating between locks of > different instances, false positive warnings for circular locking are > reported. To prevent this, register unique lockdep key for each of the > individual instances. > > Signed-off-by: Amit Sunil Dhamne <amitsd@xxxxxxxxxx> > --- > drivers/usb/roles/class.c | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/drivers/usb/roles/class.c b/drivers/usb/roles/class.c > index d7aa913ceb8a..807a8f18ec20 100644 > --- a/drivers/usb/roles/class.c > +++ b/drivers/usb/roles/class.c > @@ -11,6 +11,7 @@ > #include <linux/usb/role.h> > #include <linux/property.h> > #include <linux/device.h> > +#include <linux/lockdep.h> > #include <linux/module.h> > #include <linux/mutex.h> > #include <linux/slab.h> > @@ -33,6 +34,10 @@ struct usb_role_switch { > usb_role_switch_set_t set; > usb_role_switch_get_t get; > bool allow_userspace_control; > + > +#ifdef CONFIG_LOCKDEP > + struct lock_class_key key; > +#endif Please do not put #ifdef lines in .c files, they are not needed for this change to work properly, right? checkpatch should have complained about this... thanks, greg k-h