On Fri, 25 Feb 2022, Dmitry Torokhov wrote: > The driver creates the top row map sysfs attribute in input_configured() > method; unfortunately we do not have a callback that is executed when HID > interface is unbound, thus we are leaking these sysfs attributes, for > example when device is disconnected. > > To fix it let's switch to managed version of adding sysfs attributes which > will ensure that they are destroyed when the driver is unbound. > > Fixes: 14c9c014babe ("HID: add vivaldi HID driver") > Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> > --- > > Compiled only. > > drivers/hid/hid-vivaldi.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/hid/hid-vivaldi.c b/drivers/hid/hid-vivaldi.c > index efa6140915f4..42ceb2058a09 100644 > --- a/drivers/hid/hid-vivaldi.c > +++ b/drivers/hid/hid-vivaldi.c > @@ -144,7 +144,7 @@ static void vivaldi_feature_mapping(struct hid_device *hdev, > static int vivaldi_input_configured(struct hid_device *hdev, > struct hid_input *hidinput) > { > - return sysfs_create_group(&hdev->dev.kobj, &input_attribute_group); > + return devm_device_add_group(&hdev->dev, &input_attribute_group); > } > > static const struct hid_device_id vivaldi_table[] = { Applied, thanks Dmitry. -- Jiri Kosina SUSE Labs