Fix device_attribute memory leak in device_del
PATCH 1/1 Fix device_attribute memory leak in device_del
From: Catalin Marinas <[email protected]>
dev->devt_attr is allocated in device_add() but it is never freed in device_del() in the drivers/base/core.c file (reported by kmemleak).
Signed-off-by Catalin Marinas <[email protected]>
---
drivers/base/core.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-)
drivers/base/core.c +3 -1
@@ -452,8 +452,10 @@ void device_del(struct device * dev)if (parent)klist_del (&dev->knode_parent); -if (dev->devt_attr) +if (dev->devt_attr) {device_remove_file (dev, dev->devt_attr); +kfree (dev->devt_attr); + }if (dev->class) {sysfs_remove_link (&dev->kobj,"subsystem" );sysfs_remove_link (&dev->class->subsys.kset.kobj, dev->bus_id);