]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc
authorLinus Torvalds <torvalds@linux-foundation.org>
Sun, 21 Sep 2008 19:38:45 +0000 (12:38 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 21 Sep 2008 19:38:45 +0000 (12:38 -0700)
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc:
  mmc_test: initialize mmc_test_lock statically
  mmc_block: handle error from mmc_register_driver()
  atmel-mci: Set MMC_CAP_NEEDS_POLL if no detect_pin
  atmel-mci: Fix bogus debugfs file size
  atmel-mci: Fix memory leak in atmci_regs_show
  atmel-mci: debugfs: enable clock before dumping regs
  tmio_mmc: fix compilation with debug enabled

1  2 
drivers/mmc/card/block.c

diff --combined drivers/mmc/card/block.c
index 6986f392624426e0bfa6cb0f6085766f56cae90e,43d9a5b53e8d3a9d9bb7dcfee6ac95626749844f..ebc8b9d77613132f290b7372196ab50bfe416144
@@@ -103,10 -103,8 +103,10 @@@ static int mmc_blk_open(struct inode *i
                        check_disk_change(inode->i_bdev);
                ret = 0;
  
 -              if ((filp->f_mode & FMODE_WRITE) && md->read_only)
 +              if ((filp->f_mode & FMODE_WRITE) && md->read_only) {
 +                      mmc_blk_put(md);
                        ret = -EROFS;
 +              }
        }
  
        return ret;
@@@ -615,14 -613,19 +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;
  }