solve memory leak for uio
PATCH 1/1 solve memory leak for uio
we have to call kobject_put() to clean up the kobject after function kobject_init(), kobject_add(), or kobject_uevent() is called.
Signed-off-by Cong Ding <[email protected]>
--- drivers/uio/uio.c | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-)
drivers/uio/uio.c +5 -3
@@ -317,16 +317,18 @@ static int uio_dev_add_attributes(struct uio_device *idev) ret =kobject_add (&portio->kobj, idev->portio_dir,"port%d" , pi);if (ret) - goto err_portio; + goto err_portio_kobj; ret =kobject_uevent (&portio->kobj,KOBJ_ADD );if (ret) - goto err_portio; + goto err_portio_kobj; }return 0 ; err_portio: -for (pi--; pi >=0 ; pi--) { + pi--; +err_portio_kobj: +for (; pi >=0 ; pi--) { port = &idev->info->port[pi]; portio = port->portio;kobject_put (&portio->kobj);
Signature · 1 line
1.7.4.5