Re: [PATCH] HID: vivaldi: fix sysfs attributes leak

From: Dmitry Torokhov
Date: Tue Mar 08 2022 - 16:13:22 EST


On Tue, Mar 1, 2022 at 6:31 AM Jiri Kosina <jikos@xxxxxxxxxx> wrote:
>
> 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, are you planning to send this for 5.17 or 5.18?

Thanks.

--
Dmitry