Add missing IO engines to the HOWTO

Signed-off-by: Jens Axboe <axboe@fb.com>
Add support for HDFS IO engine

Signed-off-by: Jens Axboe <axboe@fb.com>
Update libhdfs engine documention and options

Signed-off-by: Jens Axboe <axboe@fb.com>
fix re-open failure issue when using gluster ioengine

Signed-off-by: rootfs <hchen@redhat.com>
Add unlink hook to ioengine API, gluster ioengine

fio would just call unlink even with engines that are not using the
operating systems file namespace... This provides a hook to allow
overriding that, with a default handler, and implements it for the
gluster ioengine.

There are others which it'd probably make sense I'm sure.

Huamin Chen looked over my changes to the gluster code earlier...
>I like this unlink idea, it would be great if you can also make unlink optional (if my coding reading is correct). This looks a great pull request candidate to fio. Please ping Axboe after you are done. He is not actively watching pull requests.

>Please also feel free to augment gluster code and pull me for review if necessary.

-castor

Signed-off-by: Jens Axboe <axboe@fb.com>
Update io engine version

Signed-off-by: Jens Axboe <axboe@fb.com>
options: warn if we fail to make sense of buffer_pattern

Signed-off-by: Jens Axboe <axboe@fb.com>
Add string support for buffer_pattern

Signed-off-by: Jens Axboe <axboe@fb.com>
Fix crash in client with NULL hostname

Fix this by adding an empty hostname.

Signed-off-by: Jens Axboe <axboe@fb.com>
Fix hangs due to iodepth_low

With some combinations of iodepth, iodepth_batch, iodepth_batch_complete,
and io_depth_low, do_io hangs after reaping the first set of completions
since io_u_queued_complete is called requesting more completions than
td->cur_depth.

Example printing min_evts and td->cur_depth in the do/while loop:
waiting on min=96 cd=627
waiting on min=96 cd=531
waiting on min=96 cd=435
waiting on min=96 cd=339
waiting on min=96 cd=243
waiting on min=96 cd=147
waiting on min=96 cd=51
Jobs: 12 (f=12): [r(12)] [43.8% done] [0KB/0KB/0KB /s] [0/0/0 iops] [eta 00m:09s]
...
Jobs: 12 (f=12): [r(12)] [0.0% done] [0KB/0KB/0KB /s] [0/0/0 iops] [eta 2863d:18h:28m:38s]
<fio never exits>

Fix this by adjusting min_evts to the current_depth if that is smaller.

Tested with a jobfile including:
iodepth=1011
iodepth_batch=96
iodepth_batch_complete=96
iodepth_low=1
runtime=15
time_based

Modified by Jens to fix the check, and move it into
io_u_queued_complete() instead of at the caller site.

Signed-off-by: Jens Axboe <axboe@fb.com>
server: fix wrong use of exit() in server when daemonized

We can't use exit(), or we'll trigger the atexit() hook and
free the shared mem used for mutexes, etc. This can cause a
hang when using a daemonized fio server.

Reported-by: Castor Fu <castor@egocast.org>
Signed-off-by: Jens Axboe <axboe@fb.com>
Fio 2.1.12

Signed-off-by: Jens Axboe <axboe@fb.com>
options: fix single use if / for bssplit

It was buggy in that it did not extend to 100%, if nobody else
was part of the group.

Signed-off-by: Jens Axboe <axboe@fb.com>
Add basic tool to turn blktrace into fio job file

No documentation yet, it's just a start.

Signed-off-by: Jens Axboe <axboe@fb.com>
Merge branch 'master' of ssh://git.kernel.dk/data/git/fio
btrace2fio: set runtime

Signed-off-by: Jens Axboe <axboe@kernel.dk>
btrace2fio: use percentage_random and add filename option

Signed-off-by: Jens Axboe <axboe@kernel.dk>
btrace2fio: cleanups and inflight hashing

Signed-off-by: Jens Axboe <axboe@kernel.dk>
Fixup data-direction to name translation

We had two of them, and they were both wrong since trim got
introduced. Replace by a single implementation in io_ddir.h,
right where it's defined.

Reported-by: Elliott, Robert <Elliott@hp.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
fio: print io_u errors on one line

Print io_u errors on one line and with one log_err command
to keep them from being interrupted by other prints

Old:
fio: io_u error on file /dev/sdt: Input/output error5.1MB/0KB/0KB /s]
[227K/0/0 iops] [eta 02d:10h:53m:36s]
     read offset=145442430976, buflen=4096
fio: io_u error on file /dev/sdt: Input/output error
     read offset=397760724992, buflen=4096

New:
fio: io_u error on file /dev/sdr: Input/output error: write offset=1532626153472, buflen=4096
fio: io_u error on file /dev/sdt: Input/output error: write offset=102684229632, buflen=4096

Signed-off-by: Robert Elliott <elliott@hp.com>
Signed-off-by: Jens Axboe <axboe@fb.com>