libeatmydata 130 Transparently ignore calls to synchronize data safely to disk

Libeatmydata transparently disables most ways a program might force data to be written to the file system, such as fsync() or open(O_SYNC).

Such synchronisation calls provide important data integrity guarantees but are expensive to perform and can significantly slow down software that (over)uses them.

This price is worth paying if you care about the files being modified---which is typically the case---or when manipulating important components of your system. Please, do not use something called ``eat my data'' in such cases!

However, it does not make sense to accept this performance hit if the data is unimportant and you can afford to lose all of it in the event of a crash, for example when running a software test suite. Adding libeatmydata.so to the LD_PRELOAD environment of such tasks will override all C library data synchronisation functions with custom no-op ones that do nothing and immediately return success.

A simple eatmydata script is included that does this for you.