Patch "HID: vivaldi: fix sysfs attributes leak" has been added to the 5.16-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    HID: vivaldi: fix sysfs attributes leak

to the 5.16-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     hid-vivaldi-fix-sysfs-attributes-leak.patch
and it can be found in the queue-5.16 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 2693c302d1ebf1941a60c5a9e57746440e1293fa
Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
Date:   Fri Feb 25 17:18:58 2022 -0800

    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@xxxxxxxxx>
    Tested-by: Stephen Boyd <swboyd@xxxxxxxxxxxx>
    Reviewed-by: Stephen Boyd <swboyd@xxxxxxxxxxxx>
    Signed-off-by: Jiri Kosina <jkosina@xxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/hid/hid-vivaldi.c b/drivers/hid/hid-vivaldi.c
index 576518e704ee..d57ec1767037 100644
--- a/drivers/hid/hid-vivaldi.c
+++ b/drivers/hid/hid-vivaldi.c
@@ -143,7 +143,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[] = {



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux