Messages in this thread Patch in this message | | | Date | Sat, 13 Sep 2008 19:02:07 +0900 | From | Akinobu Mita <> | Subject | [PATCH] mmc_block: handle error from mmc_register_driver() |
| |
Check error from mmc_register_driver() and properly unwind block device registration.
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Cc: Pierre Ossman <drzeus-mmc@drzeus.cx> --- drivers/mmc/card/block.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-)
Index: 2.6-git/drivers/mmc/card/block.c =================================================================== --- 2.6-git.orig/drivers/mmc/card/block.c +++ 2.6-git/drivers/mmc/card/block.c @@ -615,14 +615,19 @@ static struct mmc_driver mmc_driver = { static int __init mmc_blk_init(void) { - int res = -ENOMEM; + int res; res = register_blkdev(MMC_BLOCK_MAJOR, "mmc"); if (res) goto out; - return mmc_register_driver(&mmc_driver); + res = mmc_register_driver(&mmc_driver); + if (res) + goto out2; + return 0; + out2: + unregister_blkdev(MMC_BLOCK_MAJOR, "mmc"); out: return res; }
| |