]>
Commit | Line | Data |
---|---|---|
976bf4e2 GKH |
1 | From 18d19c96457d172d913510c083bc7411ed40cb10 Mon Sep 17 00:00:00 2001 |
2 | From: Laurent Pinchart <laurent.pinchart@ideasonboard.com> | |
3 | Date: Wed, 10 Feb 2010 13:32:49 +0100 | |
4 | Subject: class: Free the class private data in class_release | |
5 | ||
6 | From: Laurent Pinchart <laurent.pinchart@ideasonboard.com> | |
7 | ||
8 | commit 18d19c96457d172d913510c083bc7411ed40cb10 upstream. | |
9 | ||
10 | Fix a memory leak by freeing the memory allocated in __class_register | |
11 | for the class private data. | |
12 | ||
13 | Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> | |
14 | Acked-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com> | |
15 | Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> | |
16 | ||
17 | --- | |
18 | drivers/base/class.c | 2 ++ | |
19 | 1 file changed, 2 insertions(+) | |
20 | ||
21 | --- a/drivers/base/class.c | |
22 | +++ b/drivers/base/class.c | |
23 | @@ -59,6 +59,8 @@ static void class_release(struct kobject | |
24 | else | |
25 | pr_debug("class '%s' does not have a release() function, " | |
26 | "be careful\n", class->name); | |
27 | + | |
28 | + kfree(cp); | |
29 | } | |
30 | ||
31 | static struct sysfs_ops class_sysfs_ops = { |