Add support for O_ATOMIC
authorChris Mason <chris.mason@fusionio.com>
Fri, 15 Nov 2013 22:52:58 +0000 (15:52 -0700)
committerJens Axboe <axboe@kernel.dk>
Fri, 15 Nov 2013 22:55:41 +0000 (15:55 -0700)
commitd01612f3ae2515eb035d0c4ce954d8cb167a0a61
treefcd50022433a60f49b36bc71e55bdaafe5f81fd2
parent5054e67c7d87f25a9eb7b647adaee5e1c9c7cc5b
Add support for O_ATOMIC

O_ATOMIC makes writes atomic, meaning that they are fully stable
on media (in the event of a power cut) when acknowledged by the
device and OS.

This only truly works on Linux with the pending patches to
add O_ATOMIC.

Updated by Jens to:

- Add man page and HOWTO description of the option
- Make O_ATOMIC imply O_DIRECT, so that it actually works if you
  don't set O_DIRECT manually.
- Add the option to the conversion list so it works for
  client/server.
- Error handling so that if atomic=1 is set and the OS does not
  support it, error out instead of just pretending it works.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
12 files changed:
HOWTO
backend.c
cconv.c
filesetup.c
fio.1
init.c
memory.c
options.c
os/os-linux.h
os/os.h
server.h
thread_options.h