56785384eb15a937f275292109603e51a5191365 |
|
28-Feb-2014 |
Jens Axboe <axboe@fb.com> |
Update IO engine version Commit 225ba9e3 changed the layout of struct io_u, so update the engine version to indicate that external engines need to be recompiled. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/ioengine.h
|
225ba9e3433cf27d8ff7b213d9f78b7ef2776c70 |
|
26-Feb-2014 |
Jens Axboe <axboe@fb.com> |
Branch and cache miss speedups Just some low hanging fruit. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/ioengine.h
|
a8075704d3392fede7bd7cfa394616fa0eed7ae0 |
|
13-Feb-2014 |
Daniel Gollub <daniel.gollub@t-online.de> |
Introduce get_ioengine for external engines This makes life easier for plugins written in C++ since they do not need to deal with struct initilization issues with the ioengine_ops symbol. With g++ a non-static ioengine_ops in global scope like this: struct ioengine_ops ioengine = { .name = "null", .version = FIO_IOOPS_VERSION, .queue = fio_null_queue, .commit = fio_null_commit, }; Results in: cpp_null2.cc: At global scope: cpp_null2.cc:112:1: error: C99 designator ‘name’ outside aggregate initializer cpp_null2.cc:112:1: sorry, unimplemented: non-trivial designated initializers not supported cpp_null2.cc:112:1: sorry, unimplemented: non-trivial designated initializers not supported cpp_null2.cc:112:1: sorry, unimplemented: non-trivial designated initializers not supported cpp_null2.cc:112:1: sorry, unimplemented: non-trivial designated initializers not supported $ Example get_iongine() symbol usage: ---8<--- extern "C" { void get_ioengine(struct ioengine_ops **ioengine_ptr) { struct ioengine_ops *ioengine; *ioengine_ptr = (struct ioengine_ops *) malloc(sizeof(struct ioengine_ops)); ioengine = *ioengine_ptr; strcpy(ioengine->name, "cpp_null"); ioengine->version = FIO_IOOPS_VERSION; ioengine->queue = fio_null_queue; ioengine->commit = fio_null_commit; ioengine->getevents = fio_null_getevents; ioengine->event = fio_null_event; ioengine->init = fio_null_init; ioengine->cleanup = fio_null_cleanup; ioengine->open_file = fio_null_open; ioengine->flags = FIO_DISKLESSIO; } } --->8--- Signed-off-by: Daniel Gollub <d.gollub@telekom.de> Moved get_ioengine_t typedef to ioengine.h. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/ioengine.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/ioengine.h
|
363cffa71a96eb4c7595bb8c325a09eb01f766a5 |
|
28-Jan-2014 |
Grant Grundler <grundler@chromium.org> |
fio: consolidate rand_seed to uint64_t csscope showed rand_seed was defined 4 times - each a different type. While they are used differently, the places where they overlap should reference the same type. This patch makes three of them the same as suggested by Jens Axboe. Signed-off-by: Grant Grundler <grundler@chromium.org> Updated by me to change rand_seed option to unsigned long long and changes related to that. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.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/ioengine.h
|
3e260a46ea9a8de224c3d0a29a608da3440f284a |
|
09-Dec-2013 |
Jens Axboe <axboe@kernel.dk> |
Add options to have fio latency profile a device This adds three new options: - latency_target. This defines a specific latency target, in usec. - latency_window. This defines the period over which fio samples. - latency_percentile. This defines the percentage of IOs that must meet the criteria specified by latency_target/latency_window. With these options set, fio will run the described workload and vary the queue depth between 1 and iodepth= to find the best performing spot that meets the criteria specified by the three options. A sample job file is also added to demonstrate how to use this. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
d179fe19f0f6b56a3335848bfac04df4c758e69f |
|
28-May-2013 |
Jens Axboe <axboe@kernel.dk> |
Bump IO engine version number We changed the layout of io_u, which isn't binary compatible with pre-compiled external engines. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
2ae0b204743d6b4048c6fffd46c6280a70f2ecd1 |
|
28-May-2013 |
Jens Axboe <axboe@kernel.dk> |
Replace list based free/busy/requeue list with FIFO + ring Cache friendliness of the list is pretty low. This has provably lower overhead. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
002e7183cb86d6100efef690b6fa90bf0988b084 |
|
17-May-2013 |
Jens Axboe <axboe@kernel.dk> |
Ensure that we have no IO pending when sleeping For rate limiting or thinktime handling, ensure that we have no busy IO when we do spin or sleep. Otherwise we potentially skew the latencies a lot, since events could have been reaped. Already working for rate iops, just abstracted it out and ensure that we do the same for thinktime. Only a problem for certain workloads, those with queuedepth > 1. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
cc86c395fd9dd2002ec1edc0967b7c9453debdfb |
|
03-May-2013 |
Jens Axboe <axboe@kernel.dk> |
Honor random/zero/compressible settings for filling an initial file Right now we only do that for when the job writes, do it for the initial setup as well. Otherwise you just get zero filled files initially, which might not be what you want. Also fixes a bug with compression if compress_chunk isn't set. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
c5d5a325399db33fb5cacf4d07a23e64c6b428af |
|
17-Apr-2013 |
Jens Axboe <axboe@kernel.dk> |
ioengine: kill unneeded thread_data forward declaration Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
22f80458a520d0c5371c64bf91d24cdd21dff825 |
|
09-Apr-2013 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: eta.c fio.h init.c options.c stat.c Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
ad705bcb7e79a7cdb9891db17b4c40b13b6c30c3 |
|
09-Apr-2013 |
Steven Noonan <steven@uplinklabs.net> |
implement 'unit_base' option to select between KB and Kbit et. al. With network testing, it's often desirable to measure in terms of kilobits/megabits rather than kilobytes/megabytes. This adds an option named 'unit_base' which can be set to either '1' or '8', where '1' means represent in terms of bits and '8' means to represent rate in terms of bytes. Signed-off-by: Steven Noonan <steven@uplinklabs.net> Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.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>
|
100f49f105126a26de6f1069679c20fd75194188 |
|
23-Jan-2013 |
Jens Axboe <axboe@kernel.dk> |
verify: stop on actual number of bytes needed to be verified If we don't use LFSR or a random map, we don't get told when to stop by the random generator or map. So track it on the side, using the same mechanism as do_io(). Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
bcd5abfa9f230bbe4365dad1289fdea1f5509f74 |
|
23-Jan-2013 |
Jens Axboe <axboe@kernel.dk> |
Make experimental_verify=1 handle all cases properly - Don't track written bytes, just replay the workload by resetting all the random generators. This should work for any mixture of IO. - Handle trims for verify. - Ensure that rwmix is replayed properly for verify. - Fixup logging for replay. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
67bf982340d95ca98098ea050b54b4c7adb116c0 |
|
10-Jan-2013 |
Jens Axboe <axboe@kernel.dk> |
Add configure script Get rid of all the fragile guessing and checking of features, and roll a configure script instead. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
2a988d8bcb447eb098fc382835cc507587c6ba66 |
|
11-Dec-2012 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: fio.c Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
c73ed24623ad94a5254e8302298797aba2eb1e9a |
|
06-Dec-2012 |
Jens Axboe <axboe@kernel.dk> |
windowsaio: initialize and map windowsaio IO structure to io_u Instead of searching for a free entry everytime we enter queue, do this when the io_u is setup. It's cleaner and faster. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
49758e11f3658686ccd1c61724a5eba142f3ee4f |
|
03-Dec-2012 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: Makefile fio.h io_u.c ioengine.h memory.c Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
36d80bc7c7f7fbc2612941b7dd7ceaf645798c7f |
|
30-Nov-2012 |
Jens Axboe <axboe@kernel.dk> |
Wire up SIGUSR2 to kill blocking threads Get rid of io engine ops SIGTERM flag, it didn't really work. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
d72be5454c8c5378f16804ff9b8d1afe8729a380 |
|
30-Nov-2012 |
Jens Axboe <axboe@kernel.dk> |
Cache layout improvements Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
41666588eed4ed830b1fabd0458eb2b0a93f0147 |
|
21-Mar-2012 |
Jens Axboe <axboe@kernel.dk> |
gfio: add gerror.c for reporting errors Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
e476994eed3bee246ca166ea6ad6018911408e9b |
|
13-Mar-2012 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: client.c fio.h Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
82af2a7ca1a543b41c003de69d5e3c36860f47d5 |
|
13-Mar-2012 |
Jens Axboe <axboe@kernel.dk> |
Fix failure to verify in mixed read/write workload with backlog If you run a workload like this: fio --rw=randrw --bs=4k --direct=1 --ioengine=libaio --iodepth=32 --verify=meta --verify_backlog=1024 --verify_fatal=1 --name=ver-test --filename=foo --size=1G --verify_pattern=0xaaa Fio ends up never actually verifying the written blocks. This happens because as we generate an entry to be verified, the backend checks whether this is a read/write mixed workload. It then thinks that the READ is just that, a normal READ, when in fact it could be coming from our verify list. Mark such a read as coming from our verify list, so that we know if it's a "normal" read or one generated to verify previously written data. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.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/ioengine.h
|
9c42684e32325da26e862280388798343c5f1305 |
|
02-Mar-2012 |
Jens Axboe <axboe@kernel.dk> |
Add buffer_compress_percentage The option is pending testing, so not documented yet. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
93bcfd20e37cef8cec350fe06d3a086724c9f257 |
|
20-Feb-2012 |
Bruce Cran <bruce@cran.org.uk> |
Move Windows port to MinGW - Add calls to WSAStartup in the network code as required by Winsock. - Add Windows-specific init_random_state function which uses the Crypto API. - Move Windows port to MinGW and update build system to create a 64-bit binary by default. - Install text files as .rtf so they won't open in Notepad by default (Wordpad understands Unix line endings; Notepad doesn't). - Simplify WiX installer code. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
de890a1e48d40238dac69f302708dde8719de240 |
|
09-Nov-2011 |
Steven Lang <tirea@google.com> |
Private parameters for ioengines Here is the polished version of the engine private options patch. As discussed, the global section only ever tracks the private options for the globally defined ioengine. For command line parameters, the ioengine must be selected before any private options are used. (IE --ioengine=libaio --userspace_reap will work, but --userspace_reap --ioengine=libaio will not.) The userspace_reap option from libaio has been moved over to this new option method, usage should be identical to before. The net ioengine has been modified to use parameters, with hostname, port, protocol and listen defined as ioengine private parameters. The old style of hostname=host,port,protocol no longer works, so usage will need to be updated. (It will spit out an error that should be clear enough that it changed if this is tried.) Also, with the new way for specifying parameters, the net IO engine now allows data to flow in either direction on TCP connections, regardless of which end initiates the connection. There's also a new command line argument --enghelp which can be used to get help on ioengine private parameters, similar to --cmdhelp. With no argument, it lists all built-in ioengine. The argument is an ioengine name (Or path to .so) and optionally a comma followed by a command name, which behaves identically to --cmdhelp. For ioengine authorship, if options are supplied, both the options structure and the size of the storage needed must be supplied, and the storage must be large enough to hold a pointer to struct thread_data; that is because the options callback doesn't explicitly have a pointer to the thread data (Normally it relies on the fact that the options struct is the start of the thread data), so the offset 0 of the struct must point to the thread data, and is filled in automatically. (This also neatly provides a guarantee that offset 0 is reserved in the options data, so it can be safely used as a test of undefined.) Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
e97c14423a5688d7adfb342c16363c263cb741f9 |
|
21-Sep-2011 |
Jens Axboe <axboe@kernel.dk> |
Fix aiocb compile warnings on HPUX Unlike other platforms, it seems to require aiocb64 explicitly for long offsets. Add an os independent typedef for this. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/ioengine.h
|
21b8aee865f0d3960687ce6ba7385e5977f45061 |
|
01-Aug-2011 |
ren yufei <renyufei83@yahoo.com.cn> |
RDMA IO engine I have hacked an rdma ioengine based on OFED for fio which could test both rdma memory semantic (rdma_write/rdma_read) and channel semantic (send/recv). Would you like to merge this engine into fio? notes 1) RDMA engine works in IB, iWarp and RoCE. 2) RDMA engine is disable by default. To enable it, execute the following before compile: $ export EXTFLAGS="-DFIO_HAVE_RDMA" $ export EXTLIBS="-libverbs -lrdmacm" Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/ioengine.h
|
7d9fb455aadc0c0363489591775496f27f4a560a |
|
11-Jan-2011 |
Jens Axboe <jaxboe@fusionio.com> |
When verify fails, dump the good/bad blocks to files This makes it easy to compare afterwards to see what kind of corruption was experienced. Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/ioengine.h
|
03e20d687566753b90383571e5e152c5142bdffd |
|
02-Jan-2011 |
Bruce Cran <bruce@cran.org.uk> |
First snapshot of FIO for Windows Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/ioengine.h
|
ca7e0ddb08fece35c95e9056ca877e0806f1e6ef |
|
28-Oct-2010 |
Jens Axboe <jaxboe@fusionio.com> |
binject: ensure we get aligned memory Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/ioengine.h
|
1ef2b6be973eded12827990ae1a9eb28b7b20be7 |
|
08-Oct-2010 |
Jens Axboe <jaxboe@fusionio.com> |
Initial support for explicit write barriers Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/ioengine.h
|
79a43187163eb99eaabaa496cb8b5e3a164f3e09 |
|
07-Sep-2010 |
Jens Axboe <jaxboe@fusionio.com> |
Add binject IO engine Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/ioengine.h
|
0d29de831183dfd049c97a03008d425ce21e2fa4 |
|
01-Sep-2010 |
Jens Axboe <jaxboe@fusionio.com> |
Add verify trim support Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/ioengine.h
|
38dad62d5154ffaad445bd0231b271b9a46a5190 |
|
20-Jul-2010 |
Jens Axboe <jaxboe@fusionio.com> |
Add rw_sequencer option Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/ioengine.h
|
a5f3027cb0495dfe217b2626d248fcc054e7e878 |
|
20-Jul-2010 |
Jens Axboe <jaxboe@fusionio.com> |
Initial commit for TRIM/DISCARD support Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/ioengine.h
|
10e8a7b30ce2917df9f839d42596c7e3af9a904f |
|
15-Jul-2010 |
Radha Ramachandran <radha@google.com> |
No need to use specific flag for io_u fill length The fill length already provides that information. Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/ioengine.h
|
9522850758ecad087891710b391b4e77f6bff839 |
|
14-Jul-2010 |
Jens Axboe <jaxboe@fusionio.com> |
Turn io_u filled variable into a flag Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/ioengine.h
|
cbe8d7561cf6d81d741d87eb7940db2a111d2144 |
|
14-Jul-2010 |
Radha Ramachandran <radha@google.com> |
Reuse filled pattern I made changes to fio so we wld re-use the already populated io_u buffer (when there is a non-random pattern) during writes. That way only the header will be re-calculated for every I/O. This way the buffer wld get populated in the beginning and as long as the subsequent ios using the same io_u structure are writes and have same or less block size, it wld get re-used. If any of the subsequent i/o is a read or has a block size greater than the pre-filled one, then the buffer is invalidated and will be re-filled at the next write. Reason for this risky change: (Performance) I tested this change on a tmpfs(with no swap backing), with the following config file: [sscan_write] filename=/mytmpfs/datafile.tmp rw=write bs=64k size=3G ioengine=libaio iodepth=1024 iodepth_low=512 runtime=10800 bwavgtime=5000 thread=1 do_verify=0 verify=meta verify_pattern=0x55aaa55a verify_interval=4k continue_on_error=1 fio-1-41-6 gave 306MB/s and the new change had a performance of 1546MB/s Side effects/Risks: There is a risk with this fix, that if the buffer gets corrupted then the subsequent writes will also be corrupt. I think for both sequential writes and random writes (with verify, where the I/O log is replayed) we shld be able to find the first I/O that started with the corruption and if the buffer is getting corrupted, there are other issues here. Testing: I have tested this fix with sequential write(verify)/random read write mix combination(with verify). I think I have taken care of most of the case, but please let me know if there is anything I have missed. I have attached the patch along with this email. I think the performance improvement outweighs the risk associated with the fix. But I will let you decide if you wld like to pick it up. Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
/external/fio/ioengine.h
|
0a28ecda80a78c9d70ae38ced58f3a2fa9c9529d |
|
09-Mar-2010 |
Jens Axboe <jens.axboe@oracle.com> |
Abstract out generic sync helper Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/ioengine.h
|
44f29692cfba246981bb3c1b894333a6d2209f51 |
|
09-Mar-2010 |
Jens Axboe <jens.axboe@oracle.com> |
Initial suppor for sync_file_range() This revs the ioengine to 11, as we now have another data direction. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/ioengine.h
|
0c41214ff4e6f31f8df64aac37be7853aada6f1f |
|
03-Nov-2009 |
Radha Ramachandran <radha@google.com> |
Fix race condition when using asynch verify I discovered the race condition when using asynch verify with libaio engine. The code assumes that because the td->cur_depth value is not 0 that there is still I/O pending and issues io_getevents when the I/O was actually being verified by the asynchronous verify thread. This causes the code to hang. (Updated by Jens to use a new io_u->flag bitfield instead of adding a new integer to struct io_u). Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/ioengine.h
|
e8462bd8250cf3ff2d41f17e1a4d4cefc70b6b37 |
|
06-Jul-2009 |
Jens Axboe <jens.axboe@oracle.com> |
Add support for async IO verification offload This adds support for setting up a number of IO verification offload threads, instead of doing the offload inline. An option for controlling the CPU affinity of those threads are always added. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/ioengine.h
|
9c0d224129b0c59698e4c77e7fed00dc8cbb50e1 |
|
01-Jul-2009 |
Jens Axboe <jens.axboe@oracle.com> |
Don't allow pre_read on IO engines that cannot seek We cannot pre-read files, if we cannot seek back and read the same data again. So just disable it with a warning to the user. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/ioengine.h
|
f2bba1820a567ac00b09916239ac8feb125cead2 |
|
15-Jun-2009 |
Radha Ramachandran <radha@google.com> |
Add a 'continue_on_error' option to fio Add option to make fio continue on non-fatal errors. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/ioengine.h
|
581e71417760e0aa86eac0acd704253ff0eeea4f |
|
09-Jun-2009 |
Jens Axboe <jens.axboe@oracle.com> |
Add support for limiting only rate in only one direction So now you can say 'limit writes to 10MB/sec' and have reads go full throttle, for instance. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/ioengine.h
|
c592b9fe12d4739d99d5bece517e304804876df6 |
|
03-Jun-2009 |
Jens Axboe <jens.axboe@oracle.com> |
More fio.h cleanups Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/ioengine.h
|
2b4f4abec640f36ccdff39de00e74b2234e27116 |
|
03-Jun-2009 |
Jens Axboe <jens.axboe@oracle.com> |
Move IO engine flags Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/ioengine.h
|
dcefb588d556828af570221b2dc276a6376c8557 |
|
03-Jun-2009 |
Jens Axboe <jens.axboe@oracle.com> |
Add ioengine.h header Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/ioengine.h
|