Hi, > Odd, when creating a simple sample program that calls posix_fadvise it works > fine on both 2.4 and 2.6 kernels. Attached please find the source of my testing program. In fact, it actually does:
int main() { int fd; fd = open("a.c", 0); posix_fadvise (fd, 0, 0, POSIX_FADV_SEQUENTIAL); close(fd); } If I compile with `gcc -D_POSIX_C_SOURCE=200112L a.c`, no error. I tried to build it using the same environment as gmoe-vfs2's modules by: 1. copy a.c to gnome-vfs2-2.10.1/modules 2. adding these two lines to Makefile.am bin_PROGRAMS = a a_SOURCES = a.c 3. `make a` 4. `./a` -> Segmentation fault Now it's obviously that it's something to do with the building configuration. > Does gnomevfs-cat /etc/debian_version work for you with debians gnome-vfs 2.10 > or does that also crash ? It crashes when I re-use the original libfile.so Cheers, -- Ivan, Wong Yat Cheung <[EMAIL PROTECTED]> GPG: 1024D/7775FDBB: CE88 DBE0 5AF3 D4AC 91F5 6C0E 2C84 B2AD 7775 FDBB
#ifdef HAVE_CONFIG_H #include <config.h> #include <libgnomevfs/gnome-vfs-cancellation.h> #include <libgnomevfs/gnome-vfs-context.h> #include <libgnomevfs/gnome-vfs-i18n.h> #include <libgnomevfs/gnome-vfs-method.h> #include <libgnomevfs/gnome-vfs-mime.h> #include <libgnomevfs/gnome-vfs-module-shared.h> #include <libgnomevfs/gnome-vfs-module.h> #include <libgnomevfs/gnome-vfs-utils.h> #include <libgnomevfs/gnome-vfs-mime.h> #include <libgnomevfs/gnome-vfs-monitor-private.h> #include <libgnomevfs/gnome-vfs-private-utils.h> #include <libgnomevfs/gnome-vfs-ops.h> #include <dirent.h> #include <errno.h> #include <glib/gstrfuncs.h> #include <glib/gutils.h> #include <limits.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/stat.h> #include <sys/types.h> #include <unistd.h> #include <utime.h> #include <string.h> #endif #include <fcntl.h> int main() { int fd; fd = open("a.c", 0); posix_fadvise (fd, 0, 0, POSIX_FADV_SEQUENTIAL); close(fd); }