diff options
author | Miklos Szeredi <miklos@szeredi.hu> | 2003-10-04 17:31:38 +0000 |
---|---|---|
committer | Miklos Szeredi <miklos@szeredi.hu> | 2003-10-04 17:31:38 +0000 |
commit | 27af48b9de3a15f16cce7747780ae37843ccac26 (patch) | |
tree | 39080f428b1cac1c80da10b2fe71ff26a8adc17e | |
parent | 02ceb11c60d865a69c7f86a95c176b510779c033 (diff) | |
download | libfuse-27af48b9de3a15f16cce7747780ae37843ccac26.tar.gz |
fixes
-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) |