Patch "leds/led-class: Add missing put_device()" has been added to the 4.2-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
leds/led-class: Add missing put_device()
to the 4.2-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:
leds-led-class-add-missing-put_device.patch
and it can be found in the queue-4.2 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
e5b5a61fcb3743f1dacf9e20d28f48423cecf0c1Mon Sep 17 00:00:00 2001
From: Ricardo Ribalda Delgado <[email protected]>
Date: Fri, 31 Jul 2015 13:36:21 +0200
Subject: leds/led-class: Add missing put_device()
From: Ricardo Ribalda Delgado <[email protected]>
commit e5b5a61fcb3743f1dacf9e20d28f48423cecf0c1 upstream.
Devices found by class_find_device must be freed with put_device(). Otherwise the reference count will not work properly.
--- drivers/leds/led-class.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)
drivers/leds/led-class.c +5 -2
@@ -228,12 +228,15 @@ static int led_classdev_next_name(const {unsigned int i =0 ;int ret =0 ; +struct device *dev;strlcpy (name, init_name, len); -while (class_find_device (leds_class,NULL , name, match_name) && - (ret < len)) +while ((ret < len) && + (dev =class_find_device (leds_class,NULL , name, match_name))) { +put_device (dev); ret =snprintf (name, len,"%s_%u" , init_name, ++i); + }if (ret >= len)return -ENOMEM ;
Patches currently in stable-queue which might be from [email protected] are
queue-4.2/leds-led-class-add-missing-put_device.patch