diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | configure.in | 17 | ||||
-rw-r--r-- | util/fusermount.c | 4 |
3 files changed, 12 insertions, 17 deletions
@@ -1,3 +1,11 @@ +2003-10-04 Miklos Szeredi <mszeredi@inf.bme.hu> + + * kernel version detection fix + + * fusermount now uses "lazy" umount option + + * fusermount can use modprobe with module-init-tools + 2003-09-08 Miklos Szeredi <mszeredi@inf.bme.hu> * Integrated caching patch by Michael Grigoriev diff --git a/configure.in b/configure.in index ebcdf60..3bfa19e 100644 --- a/configure.in +++ b/configure.in @@ -44,22 +44,9 @@ if test "$enable_kernel_module" != "no"; then AC_MSG_RESULT([$kernelsrc]) AC_MSG_CHECKING([kernel source version]) - kernsrcver=`sed -ne '/^VERSION = \(.*\)/{s//\1/;p;q;}' $kernelsrc/Makefile` - kernsrcver="$kernsrcver.`sed -ne '/^PATCHLEVEL = \(.*\)/{s//\1/;p;q;}' $kernelsrc/Makefile`" - kernsrcver="$kernsrcver.`sed -ne '/^SUBLEVEL = \(.*\)/{s//\1/;p;q;}' $kernelsrc/Makefile`" - kernsrcver="$kernsrcver`sed -ne '/^EXTRAVERSION = \(.*\)/{s//\1/;p;q;}' $kernelsrc/Makefile`" - - if test -f /etc/SuSE-release ; then - if grep -qs "^CONFIG_HIGHMEM4G" $kernelsrc/.config ; then - kernsrcver="$kernsrcver-4GB" - elif grep -qs "^CONFIG_HIGHMEM64G" $kernelsrc/.config ; then - kernsrcver="$kernsrcver-64GB" - fi - if grep -qs "^CONFIG_SMP" $kernelsrc/.config ; then - kernsrcver="$kernsrcver-SMP" - fi + if test -r $kernelsrc/include/linux/version.h; then + kernsrcver=`grep UTS_RELEASE $kernelsrc/include/linux/version.h | cut -d \" -f 2` fi - if test -z "$kernsrcver"; then AC_MSG_RESULT([Not found]) AC_MSG_ERROR([ diff --git a/util/fusermount.c b/util/fusermount.c index 754b6a9..0f94c7e 100644 --- a/util/fusermount.c +++ b/util/fusermount.c @@ -151,7 +151,7 @@ static int remove_mount(const char *mnt) } } if(remove) { - res = umount(mnt); + res = umount2(mnt, 2); /* Lazy umount */ if(res == -1) { fprintf(stderr, "%s: failed to unmount %s: %s\n", progname, mnt, strerror(errno)); @@ -353,7 +353,7 @@ static int mount_fuse(const char *mnt, int flags) pid_t pid = fork(); if(pid == 0) { setuid(0); - execl("/sbin/modprobe", "modprobe", "fuse", NULL); + execl("/sbin/modprobe", "/sbin/modprobe", "fuse", NULL); exit(1); } if(pid != -1) |