summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Szeredi <miklos@szeredi.hu>2006-10-11 05:44:55 +0000
committerMiklos Szeredi <miklos@szeredi.hu>2006-10-11 05:44:55 +0000
commit856e5cb2e11d39e5051d1bcf0bd872aadfb777ae (patch)
tree0209d745e81a6e938d6f8557cec60eb96ef0ff7b
parent53eec2a0d51ac5b126777fc61fa12bbc35a1a441 (diff)
downloadfuse-856e5cb2e11d39e5051d1bcf0bd872aadfb777ae.tar.gz
Check for signature of super_operations->umount_begin()
-rw-r--r--ChangeLog6
-rw-r--r--kernel/configure.ac8
-rw-r--r--kernel/inode.c2
3 files changed, 15 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 053fd0a..fd82cfd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-10-10 Miklos Szeredi <miklos@szeredi.hu>
+
+ * kernel: Check for signature of super_operations->umount_begin().
+ Ubuntu kernel 2.6.17 seems to use the new signature found in
+ 2.6.18. Thanks to Florent Mertens for the report
+
2006-10-08 Miklos Szeredi <miklos@szeredi.hu>
* Make sure inode numers wrap around at 2^32. This is needed on
diff --git a/kernel/configure.ac b/kernel/configure.ac
index d0ebcc8..29e6ee3 100644
--- a/kernel/configure.ac
+++ b/kernel/configure.ac
@@ -149,6 +149,14 @@ if test "$ENABLE_FUSE_MODULE" = y; then
AC_MSG_RESULT([no])
fi
+ AC_MSG_CHECKING([if umount_begin is passed a vfsmount])
+ if egrep -q "\(\*umount_begin\) *\(struct vfsmount \*" $kernelsrc/include/linux/fs.h; then
+ AC_DEFINE(UMOUNT_BEGIN_VFSMOUNT, 1, [umount_begin is passed a vfsmount])
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ fi
+
AC_MSG_CHECKING([whether lookup_instantiate_filp is defined])
if test -f $kernelsrc/include/linux/namei.h && egrep -q "lookup_instantiate_filp" $kernelsrc/include/linux/namei.h; then
AC_DEFINE(HAVE_LOOKUP_INSTANTIATE_FILP, 1, [lookup_instantiate_filp() is defined])
diff --git a/kernel/inode.c b/kernel/inode.c
index be72f80..aada038 100644
--- a/kernel/inode.c
+++ b/kernel/inode.c
@@ -213,7 +213,7 @@ struct inode *fuse_iget(struct super_block *sb, unsigned long nodeid,
return inode;
}
-#ifdef KERNEL_2_6_18_PLUS
+#ifdef UMOUNT_BEGIN_VFSMOUNT
static void fuse_umount_begin(struct vfsmount *vfsmnt, int flags)
{
if (flags & MNT_FORCE)