From: Liu Yuan Date: Tue, 19 Apr 2011 11:47:58 +0000 (+0200) Subject: block, blk-sysfs: Fix an err return path in blk_register_queue() X-Git-Tag: v2.6.35.13~26 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0dc54b12b37bb287ec4ef606ed3cc346b818e682;p=thirdparty%2Fkernel%2Fstable.git block, blk-sysfs: Fix an err return path in blk_register_queue() commit ed5302d3c25006a9edc7a7fbea97a30483f89ef7 upstream. We do not call blk_trace_remove_sysfs() in err return path if kobject_add() fails. This path fixes it. Signed-off-by: Liu Yuan Signed-off-by: Jens Axboe Signed-off-by: Greg Kroah-Hartman Signed-off-by: Andi Kleen --- diff --git a/block/blk-sysfs.c b/block/blk-sysfs.c index d2466540488c0..3eede79ad352d 100644 --- a/block/blk-sysfs.c +++ b/block/blk-sysfs.c @@ -502,8 +502,10 @@ int blk_register_queue(struct gendisk *disk) return ret; ret = kobject_add(&q->kobj, kobject_get(&dev->kobj), "%s", "queue"); - if (ret < 0) + if (ret < 0) { + blk_trace_remove_sysfs(dev); return ret; + } kobject_uevent(&q->kobj, KOBJ_ADD);