]> git.hungrycats.org Git - linux/commitdiff
pwm: Fix device reference leak
authorJohan Hovold <johan@kernel.org>
Tue, 1 Nov 2016 10:46:39 +0000 (11:46 +0100)
committerBen Hutchings <ben@decadent.org.uk>
Thu, 23 Feb 2017 03:54:40 +0000 (03:54 +0000)
commit 0e1614ac84f1719d87bed577963bb8140d0c9ce8 upstream.

Make sure to drop the reference to the parent device taken by
class_find_device() after "unexporting" any children when deregistering
a PWM chip.

Fixes: 0733424c9ba9 ("pwm: Unexport children before chip removal")
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/pwm/sysfs.c

index 6c88e1adf63742f3b635defaaa84a965104f753f..5b64f09ce314b1ccfa6e2211dedafa51083f9f22 100644 (file)
@@ -356,6 +356,8 @@ void pwmchip_sysfs_unexport_children(struct pwm_chip *chip)
                if (test_bit(PWMF_EXPORTED, &pwm->flags))
                        pwm_unexport_child(parent, pwm);
        }
+
+       put_device(parent);
 }
 
 static int __init pwm_sysfs_init(void)