logfs get_sb massage, part 1
move allocation of logfs_super to logfs_get_sb, pass it to
logfs_get_sb_...().
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
diff --git a/fs/logfs/logfs.h b/fs/logfs/logfs.h
index b878626..a3f0aba 100644
--- a/fs/logfs/logfs.h
+++ b/fs/logfs/logfs.h
@@ -471,24 +471,30 @@
/* dev_bdev.c */
#ifdef CONFIG_BLOCK
-int logfs_get_sb_bdev(struct file_system_type *type, int flags,
+int logfs_get_sb_bdev(struct logfs_super *s,
+ struct file_system_type *type, int flags,
const char *devname, struct vfsmount *mnt);
#else
-static inline int logfs_get_sb_bdev(struct file_system_type *type, int flags,
+static inline int logfs_get_sb_bdev(struct logfs_super *s,
+ struct file_system_type *type, int flags,
const char *devname, struct vfsmount *mnt)
{
+ kfree(s);
return -ENODEV;
}
#endif
/* dev_mtd.c */
#ifdef CONFIG_MTD
-int logfs_get_sb_mtd(struct file_system_type *type, int flags,
+int logfs_get_sb_mtd(struct logfs_super *s,
+ struct file_system_type *type, int flags,
int mtdnr, struct vfsmount *mnt);
#else
-static inline int logfs_get_sb_mtd(struct file_system_type *type, int flags,
+static inline int logfs_get_sb_mtd(struct logfs_super *s,
+ struct file_system_type *type, int flags,
int mtdnr, struct vfsmount *mnt)
{
+ kfree(s);
return -ENODEV;
}
#endif
@@ -619,7 +625,8 @@
void logfs_crash_dump(struct super_block *sb);
void *memchr_inv(const void *s, int c, size_t n);
int logfs_statfs(struct dentry *dentry, struct kstatfs *stats);
-int logfs_get_sb_device(struct file_system_type *type, int flags,
+int logfs_get_sb_device(struct logfs_super *s,
+ struct file_system_type *type, int flags,
struct mtd_info *mtd, struct block_device *bdev,
const struct logfs_device_ops *devops, struct vfsmount *mnt);
int logfs_check_ds(struct logfs_disk_super *ds);