diff options
author | Duncan Sands <duncan.sands@free.fr> | 2006-09-27 23:38:08 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2006-10-18 12:49:54 -0700 |
commit | 0fbf116d120a2dc5d808204c7d86ad35f7d7846f (patch) | |
tree | a9e39a6232243d80f38032b28f5fecc12a13e128 /drivers/base/dd.c | |
parent | acbd39fbc5d8757aa920c6045399374df7a6dd68 (diff) | |
download | linux-stable-0fbf116d120a2dc5d808204c7d86ad35f7d7846f.tar.gz linux-stable-0fbf116d120a2dc5d808204c7d86ad35f7d7846f.tar.bz2 linux-stable-0fbf116d120a2dc5d808204c7d86ad35f7d7846f.zip |
Driver core: plug device probe memory leak
Make sure data is freed if the kthread fails to start.
Signed-off-by: Duncan Sands <baldrick@free.fr>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/base/dd.c')
-rw-r--r-- | drivers/base/dd.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/base/dd.c b/drivers/base/dd.c index b5f43c3e44fa..ef7db6939cbf 100644 --- a/drivers/base/dd.c +++ b/drivers/base/dd.c @@ -178,7 +178,7 @@ int driver_probe_device(struct device_driver * drv, struct device * dev) probe_task = kthread_run(really_probe, data, "probe-%s", dev->bus_id); if (IS_ERR(probe_task)) - ret = PTR_ERR(probe_task); + ret = really_probe(data); } else ret = really_probe(data); |