> That's not wrong. It's just wrong if the application requires that the data be on disk after crash, which is what everyone is bitching about.
Well they want either the old data or new data to be in a file system after recovering from a crash. Not files full of zeroes...
People are willing to put up with missing X number of seconds of work from the vast majority of applications they are using.
It's actually rare that people want data immediately written to disk. Stuff they want saved very carefully and immediately is generally going to be user-generated data (what your editing with Emacs) and not automatically generated data (my application remembering the position of icons in my windows).
Forcing a commit immediately to disk seems to be a much bigger hammer then what is wanted. They just want to have the OS not to corrupt files if it can be helped.
If fsync() is the only way to have the OS not to randomly blow away files on my hard drive, then so be it. It just seems like there should be a better way.