[MTD] Fix !CONFIG_BLOCK compile for mtdsuper.c
As reported by Adrian Bunk, commit d5686b444f
(switch mtd and dm-table to lookup_bdev()) causes the following compile
error with CONFIG_BLOCK=n:
CC drivers/mtd/mtdsuper.o
drivers/mtd/mtdsuper.c: In function `get_sb_mtd':
drivers/mtd/mtdsuper.c:184: error: implicit declaration of function 'lookup_bdev'
drivers/mtd/mtdsuper.c:184: warning: assignment makes pointer from integer without a cast
drivers/mtd/mtdsuper.c:197: error: implicit declaration of function 'bdput'
make[3]: *** [drivers/mtd/mtdsuper.o] Error 1
Fix it by putting the block device lookup inside #ifdef CONFIG_BLOCK
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
This commit is contained in:
parent
759da92671
commit
f1136d022a
|
@ -125,8 +125,11 @@ int get_sb_mtd(struct file_system_type *fs_type, int flags,
|
|||
int (*fill_super)(struct super_block *, void *, int),
|
||||
struct vfsmount *mnt)
|
||||
{
|
||||
#ifdef CONFIG_BLOCK
|
||||
struct block_device *bdev;
|
||||
int mtdnr, ret;
|
||||
int ret, major;
|
||||
#endif
|
||||
int mtdnr;
|
||||
|
||||
if (!dev_name)
|
||||
return -EINVAL;
|
||||
|
@ -178,6 +181,7 @@ int get_sb_mtd(struct file_system_type *fs_type, int flags,
|
|||
}
|
||||
}
|
||||
|
||||
#ifdef CONFIG_BLOCK
|
||||
/* try the old way - the hack where we allowed users to mount
|
||||
* /dev/mtdblock$(n) but didn't actually _use_ the blockdev
|
||||
*/
|
||||
|
@ -190,22 +194,25 @@ int get_sb_mtd(struct file_system_type *fs_type, int flags,
|
|||
DEBUG(1, "MTDSB: lookup_bdev() returned 0\n");
|
||||
|
||||
ret = -EINVAL;
|
||||
if (MAJOR(bdev->bd_dev) != MTD_BLOCK_MAJOR)
|
||||
goto not_an_MTD_device;
|
||||
|
||||
major = MAJOR(bdev->bd_dev);
|
||||
mtdnr = MINOR(bdev->bd_dev);
|
||||
bdput(bdev);
|
||||
|
||||
if (major != MTD_BLOCK_MAJOR)
|
||||
goto not_an_MTD_device;
|
||||
|
||||
return get_sb_mtd_nr(fs_type, flags, dev_name, data, mtdnr, fill_super,
|
||||
mnt);
|
||||
|
||||
not_an_MTD_device:
|
||||
#endif /* CONFIG_BLOCK */
|
||||
|
||||
if (!(flags & MS_SILENT))
|
||||
printk(KERN_NOTICE
|
||||
"MTD: Attempt to mount non-MTD device \"%s\"\n",
|
||||
dev_name);
|
||||
bdput(bdev);
|
||||
return ret;
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL_GPL(get_sb_mtd);
|
||||
|
|
Loading…
Reference in New Issue