[Petter Reinholdtsen] > This make me believe libeatmydata should change to behave according to the > POSIX specification.
And just to make it more clear why I believe this. My understanding of eatmydata is that it should make the computer behave as normal while ignoring any calls to force file buffers to sync to disk. Returning 0 instead of -1 for a bad file descriptors is not behaving like normal. Linux and any other POSIX compliant operating system return -1 in this case. It can be easily demonstrated like this: % cat > x.c <<EOF #include <stdio.h> #include <unistd.h> int main(int argc, char *argv[]) { printf("fsync(1024) = %d\n", fsync(1024)); return 0; } EOF % gcc x.c % ./a.out fsync(1024) = -1 % eatmydata ./a.out fsync(1024) = 0 % Please make eatmydata hide that it is running by behaving like POSIX specifies. -- Happy hacking Petter Reinholdtsen