HID: vivaldi: fix sysfs attributes leak
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Sat, 26 Feb 2022 01:18:58 +0000 (17:18 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 16 Mar 2022 13:23:35 +0000 (14:23 +0100)
commite52ecbca254b3da0f09c2dc43fc7debec65e25ae
tree18b72b63846d4161ad885270b346113339030810
parentea45b38caf2bf213568451fb5d0e0db3ee7924f3
HID: vivaldi: fix sysfs attributes leak

[ Upstream commit cc71d37fd1f11e0495b1cf580909ebea37eaa886 ]

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@gmail.com>
Tested-by: Stephen Boyd <swboyd@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/hid/hid-vivaldi.c