]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - fs/logfs/dev_bdev.c
Merge tag 'v2.6.38' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[mv-sheeva.git] / fs / logfs / dev_bdev.c
index 92ca6fbe09bd2254eb9cbbd3d23b487ee4d4f9a8..723bc5bca09ae3837448c3a286e50ff38e427576 100644 (file)
@@ -300,7 +300,7 @@ static int bdev_write_sb(struct super_block *sb, struct page *page)
 
 static void bdev_put_device(struct logfs_super *s)
 {
-       close_bdev_exclusive(s->s_bdev, FMODE_READ|FMODE_WRITE);
+       blkdev_put(s->s_bdev, FMODE_READ|FMODE_WRITE|FMODE_EXCL);
 }
 
 static int bdev_can_write_buf(struct super_block *sb, u64 ofs)
@@ -325,13 +325,14 @@ int logfs_get_sb_bdev(struct logfs_super *p, struct file_system_type *type,
 {
        struct block_device *bdev;
 
-       bdev = open_bdev_exclusive(devname, FMODE_READ|FMODE_WRITE, type);
+       bdev = blkdev_get_by_path(devname, FMODE_READ|FMODE_WRITE|FMODE_EXCL,
+                                 type);
        if (IS_ERR(bdev))
                return PTR_ERR(bdev);
 
        if (MAJOR(bdev->bd_dev) == MTD_BLOCK_MAJOR) {
                int mtdnr = MINOR(bdev->bd_dev);
-               close_bdev_exclusive(bdev, FMODE_READ|FMODE_WRITE);
+               blkdev_put(bdev, FMODE_READ|FMODE_WRITE|FMODE_EXCL);
                return logfs_get_sb_mtd(p, mtdnr);
        }