summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Szeredi <miklos@szeredi.hu>2006-06-29 15:13:35 +0000
committerMiklos Szeredi <miklos@szeredi.hu>2006-06-29 15:13:35 +0000
commitec3f6e4c0d5b3f1a1f91cf2a35a818ca9973fc6f (patch)
tree00f111e0f97346289069fb794db7059f9effed08
parent91762cd331d955f1378dd90af08b56aa15861ab4 (diff)
downloadfuse-ec3f6e4c0d5b3f1a1f91cf2a35a818ca9973fc6f.tar.gz
*** empty log message ***fuse_2_6_0_pre3
-rw-r--r--kernel/control.c10
-rw-r--r--kernel/inode.c18
2 files changed, 27 insertions, 1 deletions
diff --git a/kernel/control.c b/kernel/control.c
index aff8b64..50e07eb 100644
--- a/kernel/control.c
+++ b/kernel/control.c
@@ -183,12 +183,22 @@ static int fuse_ctl_fill_super(struct super_block *sb, void *data, int silent)
return 0;
}
+#ifdef KERNEL_2_6_18_PLUS
+static int fuse_ctl_get_sb(struct file_system_type *fs_type, int flags,
+ const char *dev_name, void *raw_data,
+ struct vfsmount *mnt)
+{
+ return get_sb_single(fs_type, flags, raw_data,
+ fuse_ctl_fill_super, mnt);
+}
+#else
static struct super_block *fuse_ctl_get_sb(struct file_system_type *fs_type,
int flags, const char *dev_name,
void *raw_data)
{
return get_sb_single(fs_type, flags, raw_data, fuse_ctl_fill_super);
}
+#endif
static void fuse_ctl_kill_sb(struct super_block *sb)
{
diff --git a/kernel/inode.c b/kernel/inode.c
index 0eb8ced..0145045 100644
--- a/kernel/inode.c
+++ b/kernel/inode.c
@@ -270,10 +270,18 @@ struct inode *fuse_iget(struct super_block *sb, unsigned long nodeid,
}
#endif
+#ifdef KERNEL_2_6_18_PLUS
+static void fuse_umount_begin(struct vfsmount *vfsmnt, int flags)
+{
+ if (flags & MNT_FORCE)
+ fuse_abort_conn(get_fuse_conn_super(vfsmnt->mnt_sb));
+}
+#else
static void fuse_umount_begin(struct super_block *sb)
{
fuse_abort_conn(get_fuse_conn_super(sb));
}
+#endif
static void fuse_put_super(struct super_block *sb)
{
@@ -312,7 +320,6 @@ static void convert_fuse_statfs(struct kstatfs *stbuf, struct fuse_kstatfs *attr
#ifdef KERNEL_2_6_18_PLUS
static int fuse_statfs(struct dentry *dentry, struct kstatfs *buf)
-{
#else
static int fuse_statfs(struct super_block *sb, struct kstatfs *buf)
#endif
@@ -762,12 +769,21 @@ static int fuse_fill_super(struct super_block *sb, void *data, int silent)
}
#ifdef KERNEL_2_6
+#ifdef KERNEL_2_6_18_PLUS
+static int fuse_get_sb(struct file_system_type *fs_type,
+ int flags, const char *dev_name,
+ void *raw_data, struct vfsmount *mnt)
+{
+ return get_sb_nodev(fs_type, flags, raw_data, fuse_fill_super, mnt);
+}
+#else
static struct super_block *fuse_get_sb(struct file_system_type *fs_type,
int flags, const char *dev_name,
void *raw_data)
{
return get_sb_nodev(fs_type, flags, raw_data, fuse_fill_super);
}
+#endif
static struct file_system_type fuse_fs_type = {
.owner = THIS_MODULE,