History log of /external/fio/iolog.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
890b665611751661aac1030603175bb7bbde34bc 07-May-2014 Jens Axboe <axboe@fb.com> verify: fix verification of uncompleted or errored ios

Stoo Davies reports:

------

I'm doing some powerfail recovery testing on a storage array over iSCSI.
Host is RHEL 6.4 kernel 2.6.32-358.el6.x86_64.

With fio 2.1.2 -> 2.1.4 the job file below rides through the disks going
away, and continues I/O after they come back, without reporting any
errors. With fio 2.1.5 -> 2.1.8 when the disks come back fio
immediately reports a meta verification error.

I captured a trace with an finisar analyzer, and can see that after the
disks come back and the host logs back in, a read is issued for an lba
which was never written to. Since I don't see verification errors
outside of the powerfail testing, I suspect fio isn't correctly handling
failed writes during the time the disks are unavailable.

------

The issue is caused by a change between 2.1.4 and 2.1.5 that started
logging IO for verification at issue time, instead of at completion
time. If the IO only partially completes or completes in error, then
we need to adjust the verification unit so that we verify only what
fio actually wrote.

Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/iolog.h
905e3d4ff8d01a4402186e1ad1f5f1fbbb6b7ef4 03-Apr-2014 Jens Axboe <axboe@fb.com> Cleanup the parallellized log writing

And move it all to iolog.c, this means we can un-export
some of the log functions, too.

Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/iolog.h
243bfe190245a10e9d0981bf2a7c722edc4c43d4 02-Apr-2014 Jens Axboe <axboe@fb.com> iolog: don't serialize the writing of all logs

Serialize based on filename, so that independent logs can be
written at the same time. If the logs are big, this can take
a while to flush to disk. It's silly to have all jobs waiting
on each other, when they could write their own logs independently.

Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/iolog.h
9900706854ce4919afb064ef6be42447f698d581 20-Feb-2014 Peter Oberparleiter <oberpar@linux.vnet.ibm.com> fio: flush log files on test end

Ensure proper flushing of all logs at the end of tests.

Signed-off-by: Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/iolog.h
f940128526dbe468a1951cce10c2fe5dbd23875f 06-Feb-2014 Jens Axboe <axboe@fb.com> verify: always log IO in the order they are issued

We currently log verify_backlog verifies when they complete,
which means the sequence of verify and issue might be different.

Change this to log in one spot, prior to issue, and track the
completion state of the logged unit instead. This unifies the
handling of verifies.

Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/iolog.h
da0a7bd224bb9331f27bb4b20394dd5c8fa3acb0 17-Sep-2013 Juan Casse <jcasse@chromium.org> Adds check for numberio during verify phase.

Currently, fio checks the block offset number in a block's header during
the verify phase.
We add a check for the io number (numberio) to detect stale blocks. This
check is performed only on workloads that write data, as those workloads
know what numberio was written to each block.
td->io_issues[ddir] = 0; was removed so that numberio does not get reset
at each iteration; we want numberio to keep incrementing to reflect
how many times the same data was written.

Signed-off-by: Juan Casse <jcasse@chromium.org>
Reviewed-by: Grant Grundler <grundler@chromium.org>

Fixed typo.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
3c568239a319087a965b06bc2ed94d058810100f 30-Sep-2013 Jens Axboe <axboe@kernel.dk> log: disable log, if realloc fails

Right now we just segfault, if realloc() returns NULL. Handle
this a bit more gracefully, by just disabling logging if that
happens. Fio will also print an error for that case.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
9b7e600ddb531fd359322bbc14e358c10761fe57 02-Aug-2013 Erwan Velu <erwan@enovance.com> iolog: Logging blocksize in IOPS traces

When saving bandwidth's with write_bw_log option, the last column
provides the blocksize used during the run.

When doing the same with write_io_log option, the last column was always
set to 0 which is confusing when reading the log file later.

This patch put both write_bw_log & write_io_log using the same semantic
by reporting the blocksize for every sample.
/external/fio/iolog.h
b7f487cf80a8299a656df9c2214ff73e72956d71 10-Apr-2013 Jens Axboe <axboe@kernel.dk> Merge branch 'master' into gfio

Conflicts:
engines/libaio.c
engines/net.c
iolog.h
options.c
options.h
parse.c
parse.h
thread_options.h

Signed-off-by: Jens Axboe <axboe@kernel.dk>
8062f52754eb548cfd1de892a983fd5f0e63b347 10-Apr-2013 Jens Axboe <axboe@kernel.dk> Add thread_options.h

The options are always problematic to merge between the master
repo and gfio. So import this bit from gfio.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
836fcc0fceb233ebcc41ee63b4ea5cae20b678a4 24-Jan-2013 Jens Axboe <axboe@kernel.dk> Merge branch 'master' into gfio

Conflicts:
Makefile
backend.c
client.c
fio.c
fio.h
ioengine.h
options.c
os/os-linux.h
server.c

Signed-off-by: Jens Axboe <axboe@kernel.dk>
d79db1222039e906dd49ae290daa59701f4e2385 24-Sep-2012 Jens Axboe <axboe@kernel.dk> Merge branch 'master' into gfio

Conflicts:
Makefile
backend.c
client.c
fio.h
init.c
io_ddir.h
options.c
server.h
stat.c
stat.h

Signed-off-by: Jens Axboe <axboe@kernel.dk>
6eaf09d6e9ca1f8accb057cdb18620b7e53ae33f 14-Sep-2012 Shaohua Li <shli@fusionio.com> Add support for trim as a workload type

This only works on Linux so far, and it's always sync given what
the interface to the kernel looks like. Also restricted to pure
block devices.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
9ec7779f89d4dde9fe1e23d68abaefda54b35de7 02-Aug-2012 Jens Axboe <axboe@kernel.dk> diskutil: ensure that we lock around disk_list access

And also ensure that before we free the disk util structures,
we wait for the disk util thread to exit.

This is v2 of the patch. Commit feb41855 had a bug where it
would deadlock on the disk_util_mutex, when handling drives
that had slaves (lvm/md).

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
99614958d743d0fdea9b1875d3a41a5a51e9769d 01-Aug-2012 Jens Axboe <axboe@kernel.dk> Revert "diskutil: ensure that we lock around disk_list access"

This reverts commit feb418556a236aa041a625b083d6b99e55d23d74.

It causes hangs, needs further testing.
/external/fio/iolog.h
80666bece308842c36132245e4cbbe9eb0bc506b 01-Aug-2012 Jens Axboe <axboe@kernel.dk> Merge branch 'master' into gfio

Conflicts:
iolog.h
stat.c

Signed-off-by: Jens Axboe <axboe@kernel.dk>
feb418556a236aa041a625b083d6b99e55d23d74 01-Aug-2012 Jens Axboe <axboe@kernel.dk> diskutil: ensure that we lock around disk_list access

And also ensure that before we free the disk util structures,
we wait for the disk util thread to exit.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
057754389863aa18cbf36b1f2a556a422ea2f4b5 21-Mar-2012 Jens Axboe <axboe@kernel.dk> Move rbtree into lib/

And make ARRAY_SIZE() generally available, also outside gfio.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
1b42725f06f8906b9b99381da3490484f59df28a 14-Mar-2012 Jens Axboe <axboe@kernel.dk> gfio: Add support for sending logs over the network

This is for things like bw log, latency logs, etc. We add
a new depedency, zlib, for this. The logs can be quite big and
the network is not necessarily super fast, so we compress them
using zlib.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
ea51b956a15dd4aee047233be892bb3607f3adbd 14-Mar-2012 Jens Axboe <axboe@kernel.dk> iolog: note type of log

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
ec41265e81c70d8573d1359e27876c37c30c7d9d 08-Mar-2012 Jens Axboe <axboe@kernel.dk> Abstract out the thread_options structure

We need to prepare to have an on-disk/net version of the same.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
b8bc8cba9512c6dce4891fda86de675053605ca2 01-Dec-2011 Jens Axboe <axboe@kernel.dk> Add log_avg_msec option

By default, fio will note an entry in the bw/iops/lat logs for every
IO that is completed. This quickly eats up a lot of disk space
for long running jobs. By setting this option to eg 1000, fio will
average the results logged over 1 second instead. This reduces the
resolution of the log, but makes it more manageable.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
c7c6cb4cb3114ec4ce3107e15c184e161b50122e 13-Oct-2011 Jens Axboe <axboe@kernel.dk> Move IEEE754 support code to lib/

It's not strictly core code.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
5b9babb7fb9ac46c0e960ccd88c2d85ba3065c01 10-Oct-2011 Jens Axboe <axboe@kernel.dk> Abstract out and export summation of thread_stats

Client side will need it.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
c8eeb9df1f52f28567a5937e141decc6a26ec30b 05-Oct-2011 Jens Axboe <axboe@kernel.dk> Add support for write_iops_log

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
802ad4a83e92a30b5fdccf117d59fbb69068c054 05-Oct-2011 Jens Axboe <axboe@kernel.dk> Change network transmitted doubles to fio_fp64_t IEEE 754 type

Encode and decode when transferring over the network.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
7b9f733afb91a5c92f44bb6e68860f17ba14f585 03-Oct-2011 Jens Axboe <axboe@kernel.dk> server: start conversion of data structures to network friendly types

Not done yet, but do the basic conversion.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/iolog.h
a917a8b3dfeefdd7007ba2f46f21fc145574309d 02-Sep-2010 Jens Axboe <jaxboe@fusionio.com> Trim/discard fixes

Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/iolog.h
0d29de831183dfd049c97a03008d425ce21e2fa4 01-Sep-2010 Jens Axboe <jaxboe@fusionio.com> Add verify trim support

Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/iolog.h
02af09886db695e5ea2b7fd2a632733955f3c03f 24-Jun-2010 Jens Axboe <jaxboe@fusionio.com> Add total latency log

We log submission and completion latencies, also log total latencies.
This makes it easier to graph and make histograms, if you care only
about the complete latency.

Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/iolog.h
5995a6a46a4c697a6c68c02da3c7c46c0cdea23f 03-Jun-2009 Jens Axboe <jens.axboe@oracle.com> Add iolog defines

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/iolog.h