From: Tomohiro Kusumi Date: Mon, 20 Mar 2017 21:28:44 +0000 (+0200) Subject: HOWTO: Mention fsync=/fsyncdata= are set to 0 by default X-Git-Tag: fio-2.19~20 X-Git-Url: https://git.kernel.dk/?p=fio.git;a=commitdiff_plain;h=54227e6bb2e5027620b25fa216d0e4c118e9a9fb;hp=da19cdb458e5a9a8422e48b630a6b38158519303 HOWTO: Mention fsync=/fsyncdata= are set to 0 by default 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 Signed-off-by: Jens Axboe --- diff --git a/HOWTO b/HOWTO index 1ce1b0c1..cae95b77 100644 --- a/HOWTO +++ b/HOWTO @@ -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 @@ -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