The fsync() call is truly evil because it allows individual applications to make decisions that should be made on a system-wide basis. If I'm using a laptop on battery I really don't want the hard drive spinning all the time because some stupid program has decided it wants to call fsync() every few seconds. Similarly, I don't want to burn out my SSD because some stupid program is calling fsync() every few seconds and forcing multiple small writes which could have been accumulated into larger writes.
Sorry but, no matter how good you claim your NTFS driver to be, running a binary blob file system driver on a OSS system DOES NOT MAKE SENSE. I'd rather use the open EXT4 for now and wait for the improvement to be laid out, than strangling myself onto the closed blob driver tree
For GPU driver it is easy, if you announce that you are stopping the support today, I will go buy someone else's GPU the next minute.
For FS driver, when you announce you are stopping support or charge a million, I will have to redo all my systems AND backups, not such a good idea.
Forgot to say to this author:
If you want us to use the NTFS driver then:
GO FORK YOURSELF. (TO BSD/LGPL)
Even the Linux kernel developers insist that userspace APIs remain rock solid across releases. Except for some of the DRM stuff (which to be fair is only used by libdrm in userspace), the exposed userland APIs of the kernel -- especially those that are standard across many distributions and have years of history -- have remained rock-solid and unchanging throughout the years. It would be particularly surprising if one filesystem doesn't respect fsync() while another does. If you want to break semantics for a call that's been around for 13+ years, you should do it across the board on all filesystems and loudly document it on the big horn.
It's all about standards and keeping our promises to userland. Otherwise we may as well arbitrarily add parameters to fsync() with each minor release of the kernel, and expect every user to adjust.
You're welcome to use libnofsync if you like to lose data, but the default shouldn't be to go against long-standing standards.
Listen up fanboys: it's not 1998 anymore. Windows is reasonably secure, even for regular users (I don't get calls from my mom asking me to fix a virus anymore since she's been on Vista with MS Security Essentials). Windows has a modern kernel and a modern filesystem. All of these tired arguments from the Windows 3.1 and 95 era need to die. They needed to die years ago.
I assumed we were talking about enterprise servers here, because the topic was how awesome Linux was that it didn't require you to run X. Now it sounds like you're talking about desktop use, which certainly requires X just as much as Windows requires a GUI in such a situation. I'm not sure i see the difference here, other than Linux allowing a bit more flexibility while Windows is a more standard shrink-wrapped version.who the hell uses windows without a gui and has time (or the authority/access) to compile everything they want in a cli? that literally isn't useless but comparatively, it's very very useless and pointless.