block: put dev->kobj in blk_register_queue fail path
authorXiaotian Feng <dfeng@redhat.com>
Mon, 23 Aug 2010 10:30:29 +0000 (12:30 +0200)
committerJens Axboe <jaxboe@fusionio.com>
Mon, 23 Aug 2010 10:30:29 +0000 (12:30 +0200)
kernel needs to kobject_put on dev->kobj if elv_register_queue fails.

Signed-off-by: Xiaotian Feng <dfeng@redhat.com>
Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: Stephen Hemminger <shemminger@vyatta.com>
Cc: Nikanth Karthikesan <knikanth@suse.de>
Cc: David Teigland <teigland@redhat.com>
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
block/blk-sysfs.c

index 001ab18..0749b89 100644 (file)
@@ -511,6 +511,7 @@ int blk_register_queue(struct gendisk *disk)
                kobject_uevent(&q->kobj, KOBJ_REMOVE);
                kobject_del(&q->kobj);
                blk_trace_remove_sysfs(disk_to_dev(disk));
+               kobject_put(&dev->kobj);
                return ret;
        }