Skip to content

Commit

Permalink
HOWTO: Mention fsync=/fsyncdata= are set to 0 by default
Browse files Browse the repository at this point in the history
I think people could think sync ioengine and variants would somehow
fsync(2) for writes from what their name sound like, while they do
not unless these options are explicitly set (default 0).

Signed-off-by: Tomohiro Kusumi <tkusumi@tuxera.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
  • Loading branch information
kusumi authored and axboe committed Mar 21, 2017
1 parent da19cdb commit 54227e6
Showing 1 changed file with 4 additions and 1 deletion.
5 changes: 4 additions & 1 deletion HOWTO
Original file line number Diff line number Diff line change
Expand Up @@ -1100,13 +1100,15 @@ I/O type
blocks given. For example, if you give 32 as a parameter, fio will sync the
file for every 32 writes issued. If fio is using non-buffered I/O, we may
not sync the file. The exception is the sg I/O engine, which synchronizes
the disk cache anyway.
the disk cache anyway. Defaults to 0, which means no sync every certain
number of writes.

.. option:: fdatasync=int

Like :option:`fsync` but uses :manpage:`fdatasync(2)` to only sync data and
not metadata blocks. In Windows, FreeBSD, and DragonFlyBSD there is no
:manpage:`fdatasync(2)`, this falls back to using :manpage:`fsync(2)`.
Defaults to 0, which means no sync data every certain number of writes.

.. option:: write_barrier=int

Expand Down Expand Up @@ -1571,6 +1573,7 @@ I/O engine
**sync**
Basic :manpage:`read(2)` or :manpage:`write(2)`
I/O. :manpage:`lseek(2)` is used to position the I/O location.
See :option:`fsync` and :option:`fdatasync` for syncing write I/Os.

**psync**
Basic :manpage:`pread(2)` or :manpage:`pwrite(2)` I/O. Default on
Expand Down

0 comments on commit 54227e6

Please sign in to comment.