Messages in this thread Patch in this message | | | From | "Stephen M. Cameron" <> | Subject | [PATCH 07/20] cciss: Handle failure of blk_init_queue gracefully in cciss_add_disk. | Date | Thu, 17 Sep 2009 13:47:24 -0500 |
| |
Handle failure of blk_init_queue gracefully in cciss_add_disk.
Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> ---
drivers/block/cciss.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c index 557b958..60fe3c6 100644 --- a/drivers/block/cciss.c +++ b/drivers/block/cciss.c @@ -1689,6 +1689,8 @@ static int cciss_add_disk(ctlr_info_t *h, struct gendisk *disk, int drv_index) { disk->queue = blk_init_queue(do_cciss_request, &h->lock); + if (!disk->queue) + goto init_queue_failure; sprintf(disk->disk_name, "cciss/c%dd%d", h->ctlr, drv_index); disk->major = h->major; disk->first_minor = drv_index << NWD_SHIFT; @@ -1729,6 +1731,7 @@ static int cciss_add_disk(ctlr_info_t *h, struct gendisk *disk, cleanup_queue: blk_cleanup_queue(disk->queue); disk->queue = NULL; +init_queue_failure: return -1; }
| |