From: Miklos Szeredi Date: Sat, 4 Oct 2003 17:31:38 +0000 (+0000) Subject: fixes X-Git-Tag: debian_version_1_0-1~1 X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=27af48b9de3a15f16cce7747780ae37843ccac26;p=qemu-gpiodev%2Flibfuse.git fixes --- diff --git a/ChangeLog b/ChangeLog index febb9cc..4396094 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2003-10-04 Miklos Szeredi + + * kernel version detection fix + + * fusermount now uses "lazy" umount option + + * fusermount can use modprobe with module-init-tools + 2003-09-08 Miklos Szeredi * 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)