Stephen M. Cameron [Fri, 23 Mar 2012 06:48:52 +0000 (07:48 +0100)]
gfio: make io depths expand to window width
Signed-off-by: Stephen M. Cameron <stephenmcameron@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Stephen M. Cameron [Fri, 23 Mar 2012 06:48:37 +0000 (07:48 +0100)]
gfio: make latency buckets expand to window width
Signed-off-by: Stephen M. Cameron <stephenmcameron@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 22 Mar 2012 21:10:37 +0000 (22:10 +0100)]
graph: return opaque graph_label_t for each label added
Gets rid of the strcmp() lookup, store the graph label locally
instead and just pass that in.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 22 Mar 2012 20:42:55 +0000 (21:42 +0100)]
gfio: leave notebook entry as the file name
We have the job name(s) in the combo box already, it's nicer to
just leave the tab as the filename.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 22 Mar 2012 20:31:00 +0000 (21:31 +0100)]
Fixes for 32-bit compile
- uint32/64 casting
- Real bug fix in types[] index beyond length.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 22 Mar 2012 20:21:00 +0000 (21:21 +0100)]
gfio: hide graph if all values are zero
If all visible data points in a label are zero, don't display it
and don't show tooltips.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 22 Mar 2012 19:48:02 +0000 (20:48 +0100)]
graph: fix finding tooltips from label 1+
Only break if we actually found a tooltip, not unconditionally.
Cleanups.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 22 Mar 2012 08:33:33 +0000 (09:33 +0100)]
graph: fix missing else
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 22 Mar 2012 08:24:05 +0000 (09:24 +0100)]
graph: prio tree alias handling
Store aliases in a list off the prio node.
Switch graph internals to use flist, instead of home brew list.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 21:25:22 +0000 (22:25 +0100)]
Make fio include the git version in the version output
Makes it easier in bug reporting, don't have to ask people what
they are running...
Here's to you, Kep.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 21:00:43 +0000 (22:00 +0100)]
graph: remove unnecessary float multiplier
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 20:55:21 +0000 (21:55 +0100)]
graph: yet one tooltip tweaking
Don't use a percentage of the data value as the check point, that
makes it increasingly difficult to pin point a tooltip for a graph
that is near the bottom end of the range. Instead use a fixed
percentage of the first tickmark, that makes it equally fair
across the range.
Also switch to using the X axis as the prio tree index, since that
should be increasing nicely all the time.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 19:20:35 +0000 (20:20 +0100)]
graph: bump prio end value by ytick delta, if all zeroes
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 18:53:32 +0000 (19:53 +0100)]
graph: cleanup tooltip alias handling
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 18:48:32 +0000 (19:48 +0100)]
graph: fix crash on alias in prio tree
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 18:33:32 +0000 (19:33 +0100)]
graph: clear prio root iter on extra loop
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 17:54:30 +0000 (18:54 +0100)]
graph: fix for unitialized graph_value nodes
And leaking tooltip/node on free.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 16:18:46 +0000 (17:18 +0100)]
graph: remove debug printf
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 16:17:45 +0000 (17:17 +0100)]
graph: switch tooltip lookups to being range based in a prio tree
This cuts a lot of the CPU usage from browsing bigger graphs. Even
the normal graphs are typically cut in half.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 13:07:11 +0000 (14:07 +0100)]
Move rbtree into lib/
And make ARRAY_SIZE() generally available, also outside gfio.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 12:36:46 +0000 (13:36 +0100)]
graph: stop matching tooltips if X diff is too large
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 11:55:49 +0000 (12:55 +0100)]
gfio: set notebook label to base filename
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 11:48:32 +0000 (12:48 +0100)]
gfio: use glib hash for tab lookup
Not really a CPU saver, but it reduces the amount of code we have
to maintain by getting rid of the list lookup.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 11:02:13 +0000 (12:02 +0100)]
gfio: fix gc leak
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 10:59:18 +0000 (11:59 +0100)]
gfio: fixup spurious editor indent
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 10:13:31 +0000 (11:13 +0100)]
gfio: split some parts into gclient.c
We'll probably want to split gclient.c into op code handling and
results display/view.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 09:25:29 +0000 (10:25 +0100)]
gfio: add gerror.c for reporting errors
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Wed, 21 Mar 2012 09:15:20 +0000 (10:15 +0100)]
gfio: update for handling files, connections, states
Big update, changes:
- Notify from client helpers when a client is removed. This helps
gfio track this.
- Make the connection states more bullet proof. You can now connect
and disconnect, and expect connect to work again.
- Limit number of files opened through file selection or drag'n drop
to just 1.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Tue, 20 Mar 2012 14:15:00 +0000 (15:15 +0100)]
client: don't leak file descriptor on exit
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Tue, 20 Mar 2012 13:35:35 +0000 (14:35 +0100)]
server: use passed in sk in send functions
It's not always server_fd, for client communication it's the
client fd.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Tue, 20 Mar 2012 11:25:36 +0000 (12:25 +0100)]
gfio: lessen use of main_ui directly
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Tue, 20 Mar 2012 11:09:13 +0000 (12:09 +0100)]
goptions: remember to mark option index for FIO_OPT_STR_VAL
Fixes hiding of these options.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Tue, 20 Mar 2012 10:29:09 +0000 (11:29 +0100)]
goptions: use glib n-ary tree for option dependencies
We didn't support looking up children of children before, since
it would just be too costly (making the whole 'visible' thing
be N!). Move to a glib n-ary tree for option dependencies, this
is a lot cleaner and faster.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Tue, 20 Mar 2012 09:29:45 +0000 (10:29 +0100)]
goptions: enable combo box hiding
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Tue, 20 Mar 2012 09:19:44 +0000 (10:19 +0100)]
options: add ->hide_on_set
Normally we hide children if the parent isn't set, but for some
options it's the other way around.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Tue, 20 Mar 2012 09:05:38 +0000 (10:05 +0100)]
goptions: don't emit change signals during setup
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Tue, 20 Mar 2012 08:49:49 +0000 (09:49 +0100)]
goptions: ensure that FIO_OPT_STR_VAL doesn't exceed max multiplier
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Tue, 20 Mar 2012 08:32:35 +0000 (09:32 +0100)]
goptions: better support for FIO_OPT_STR_VAL
Split the value into two components, an integer 0-1023 value
and a combo box with a b/kb/gb/tb/etc multiplier.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Tue, 20 Mar 2012 07:31:29 +0000 (08:31 +0100)]
goptions: free opt types on exit from edit options view
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Tue, 20 Mar 2012 07:20:48 +0000 (08:20 +0100)]
gfio: kill ge on widget destroy
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Tue, 20 Mar 2012 07:11:47 +0000 (08:11 +0100)]
Merge branch 'gfio' of ssh://brick.kernel.dk/data/git/fio into gfio
Stephen M. Cameron [Tue, 20 Mar 2012 06:11:26 +0000 (07:11 +0100)]
gfio: fix crash on exit
Pass in correct data pointer.
Signed-off-by: Stephen M. Cameron <stephenmcameron@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Stephen M. Cameron [Tue, 20 Mar 2012 06:10:47 +0000 (07:10 +0100)]
gfio: clear stale widget pointers on dialog destruction
gopt_widgets and gopt_g_widgets arrays need to be cleared when
the job editing dialog widget tree is destroyed, otherwise you
get a crash or weird behavior if you attempt to edit a job more
than once.
Signed-off-by: Stephen M. Cameron <stephenmcameron@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Mon, 19 Mar 2012 21:01:20 +0000 (22:01 +0100)]
goptions: block gtk signal handlers instead of hacking around them
Turns out g_signal_handler_{block,unblock} exists and do exactly
what we need. Use them.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Mon, 19 Mar 2012 20:45:12 +0000 (21:45 +0100)]
cpu: move cpuload/cpuchunks options into private engine option space
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Mon, 19 Mar 2012 20:27:02 +0000 (21:27 +0100)]
options: more groupings
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Mon, 19 Mar 2012 20:13:01 +0000 (21:13 +0100)]
gfio: apply inverse options to buffered/direct
For these, we'd ideally use radio buttons instead. But hard to
pass that info from the options structure, so lets just punt
to inverse check buttons for now.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Mon, 19 Mar 2012 19:56:53 +0000 (20:56 +0100)]
options: more option grouping
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Mon, 19 Mar 2012 19:44:33 +0000 (20:44 +0100)]
options: group cgroups and jobs
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Mon, 19 Mar 2012 19:37:41 +0000 (20:37 +0100)]
gfio: fill default options on new job
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Mon, 19 Mar 2012 19:29:44 +0000 (20:29 +0100)]
Add support for inverse options
Options that are tied to each other, meaning that if one is
incremented by X, the other is decremented by X automatically.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Mon, 19 Mar 2012 18:17:49 +0000 (19:17 +0100)]
gfio: option improvements
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Mon, 19 Mar 2012 17:36:29 +0000 (18:36 +0100)]
gfio: add support for FIO_OPT_STR_MULTI options
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Mon, 19 Mar 2012 14:16:08 +0000 (15:16 +0100)]
Categorize a few more options
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Mon, 19 Mar 2012 13:37:08 +0000 (14:37 +0100)]
gfio: improve option edit
Allow grouping of options into both categories, and groups. The
groups are within a category. This shrinks down the number of
job edit tabs a lot.
Work in progress...
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Mon, 19 Mar 2012 09:44:29 +0000 (10:44 +0100)]
backend: privatize nr_thread/nr_process
We need to start moving init items out of add_job(), to allow
for updating of job options. The number of threads and processes
can be calculated before running jobs, so move them there.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Mon, 19 Mar 2012 08:13:15 +0000 (09:13 +0100)]
server: make client connections fork off
Instead of handling connections inline from the server, fork
them off before running them. This makes the able to handle
the idle loop command send/reply directly, without being
invoked from the idle loop.
New connections are forked off automatically as well, leaving
the server free to accept new connections. Not sure we want that,
or at least it should be an option to return BUSY on attempted
new connections.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Sat, 17 Mar 2012 18:59:06 +0000 (19:59 +0100)]
gfio: set clat/lat bucket graph Y title
And ensure that disk utilization lines up from the top of the notebook page,
not centered in the middle.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Sat, 17 Mar 2012 18:52:32 +0000 (19:52 +0100)]
Merge branch 'master' into gfio
Steven Lang [Sat, 17 Mar 2012 12:16:28 +0000 (13:16 +0100)]
Added 99.95 and 99.99 default percentiles.
Since there are 20 slots for percentiles, but not all used by default,
I figure it doesn't hurt to add a couple extra percentiles to the
default for tail latency capture.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Sat, 17 Mar 2012 12:03:34 +0000 (13:03 +0100)]
Merge branch 'master' into gfio
Jens Axboe [Sat, 17 Mar 2012 11:59:12 +0000 (12:59 +0100)]
Add regression test for
37cf9e3c
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Sat, 17 Mar 2012 11:54:30 +0000 (12:54 +0100)]
Enable read/write sequential offset to be a non-multiple of the block size
The way that fio does offset math internally, if a non-multiple
of the blocksize was given as a sequence offset, it would simply
be ignored due to the block offset division rounding it down.
In other words, if you did:
rw=read:512k
bs=1m
it did not read 1m and 0 offset, 1m at 512k offset, etc. Instead
the hole is ignored.
Fix this by leaving the generated sequential offset in bytes
instead of turning it into a 'fio block'.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 20:45:05 +0000 (21:45 +0100)]
gfio: make option hiding actually work
We have multiple widgets if they appear in multiple tabs. Keep
track of that and hide them all.
Still need to handle non-bool options, but at least the logic
is sound now.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 20:22:56 +0000 (21:22 +0100)]
gfio: initial support for hiding child options
If children depend on a parent, we want to hide them if the parent
isn't set. This is initial support for doing that.
Nevermind that it doesn't actually work, the hiding is buggy. And
it's only implemented for the check button type options for now.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 19:16:59 +0000 (20:16 +0100)]
Add hint on whether to hide a sub option if a parent isn't set
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 18:57:23 +0000 (19:57 +0100)]
Allow options to specify intervals
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 18:41:01 +0000 (19:41 +0100)]
gfio: sync range spin buttons in edit view
They are paired, min/max for read, and min/max for write. If the user
adjusts the min value larger than max, adjust the max automatically.
And vice versa for the max value.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 18:16:27 +0000 (19:16 +0100)]
Add FIO_OPT_G_IO_ENG category
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 18:08:39 +0000 (19:08 +0100)]
Add categories for missing options
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 17:58:39 +0000 (18:58 +0100)]
parse: ensure that an option has a category
If not, set it to misc and complain.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Daniel Ehrenberg [Fri, 16 Mar 2012 17:54:15 +0000 (18:54 +0100)]
time_based: Avoid restarting main I/O loop
Previously, when fio had written a volume of I/O equal to the size
argument, it restarted the main do_io loop.
This patch allows time_based tests to be run for longer than one
cycle in the do_io main loop. This has a couple of advantages:
* The random number generator is not reset on each iteration
of the loop, so running longer will reach different locations.
* There is not a throughput-reducing point where all operations
must be reaped before new operations are submitted.
The implementation consists of two minor changes:
* In the do_io loop, a time_based test will not exit the loop for
reading or writing too much data.
* When reading or writing sequentially, the operations wrap around
to the beginning after reading the end within the
get_next_seq_block function.
Modified by Jens to properly restart when using a randommap
as well.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 17:53:32 +0000 (18:53 +0100)]
gfio: correctly input stored FIO_OPT_STR_STORE options
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 15:34:06 +0000 (16:34 +0100)]
gfio: inherit and show more options correctly in edit job
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 13:56:44 +0000 (14:56 +0100)]
gfio: demo of how to inherit option values into edit window
We now fill FIO_OPT_STR_STORE options directly into the edited
values.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 13:02:54 +0000 (14:02 +0100)]
Merge branch 'master' into gfio
Conflicts:
fio.h
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 12:55:50 +0000 (13:55 +0100)]
Fix problem with iodepth_batch_complete=0 and accounting
If the queue is full, we always need to reap at least one event.
Otherwise we end up failing get_io_u() and restarting the file.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 12:55:27 +0000 (13:55 +0100)]
Fix wrap bug in mtime_since()
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 11:05:17 +0000 (12:05 +0100)]
gfio: move more code to ghelpers.c
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 09:17:08 +0000 (10:17 +0100)]
graph: use 0 as the floor for the line graph
Unless we have values below 0, in which case use that.
This makes it easier to visually compare a running read/write
workload. Without this change, the lowest valued graph would define
the floor of the graph view.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Fri, 16 Mar 2012 09:13:49 +0000 (10:13 +0100)]
gfio: start of options view and edit
This is pretty crap right now, but it's exposing all the options.
Now we just need them to reflect the current job, and be able to
update a remote job with a new set of options.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 20:57:40 +0000 (21:57 +0100)]
gfio: use ctrl-d for connect/disconnect
ctrl-e is used by job edit.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 18:38:01 +0000 (19:38 +0100)]
gfio: start of splitting up the source a bit
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 17:57:03 +0000 (18:57 +0100)]
gfio: include direct/buffered IO type in the iotype field
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 14:55:04 +0000 (15:55 +0100)]
gfio: add bs display
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 14:38:02 +0000 (15:38 +0100)]
gfio: put disk utilization tab in a scrolled window
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 14:37:36 +0000 (15:37 +0100)]
graph: tighten x-axis tooltip hit
Make it 10, like the Y-axis. Seems to work well in practice.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 14:02:56 +0000 (15:02 +0100)]
Document compress_buffer_percentage, compress_buffer_chunk
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 13:53:38 +0000 (14:53 +0100)]
Note offset_increment parent option
And move it up near "offset".
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 13:50:58 +0000 (14:50 +0100)]
Fix offset_increment option and add man page entry for it
td->thread_number starts at 1, not 0. So we need to subtract
one before multiplying with the offset.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Yufei Ren [Thu, 15 Mar 2012 13:44:47 +0000 (14:44 +0100)]
rdma engine graceful teardown
For rdma ioengine's one side operation, RDMA_WRITE or RDMA_READ,
server side gets a message from client side that the task is finished.
In previous version, the server simply exit() in td_io_commit() which
causes segmentation fault in thread mode or process hanging in process
mode. This patch achieves graceful tear down by setting up `td->done`
as UDP engine did.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Dan Ehrenberg [Thu, 15 Mar 2012 13:44:26 +0000 (14:44 +0100)]
New offset_increment option
This patch adds a new option to fio job files. It is described
in the HOWTO as follows:
offset_increment=int If this is provided, then the real offset becomes
the offset + offset_increment * thread_number, where the
thread number is a counter that starts at 0 and is incremented
for each job. This option is useful if there are several jobs
which are intended to operate on a file in parallel in disjoint
segments, with even spacing between the starting points.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 13:36:39 +0000 (14:36 +0100)]
gfio: fixup adding/showing of end results
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 13:09:51 +0000 (14:09 +0100)]
gfio: remove ->job_added, it's only ever set
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 13:05:01 +0000 (14:05 +0100)]
gfio: reload ge->gc after clicking connect force the file open dialog
If the above happened, then we had no client to begin with and
gc is NULL. Reload it after in any case, to ensure we have a
valid copy.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 13:03:01 +0000 (14:03 +0100)]
gfio: allow different tooltips for a button depending on state
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 12:46:16 +0000 (13:46 +0100)]
gfio: move File->Open above File->Close
This seems more logical and also what other apps do.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 12:45:02 +0000 (13:45 +0100)]
gfio: move disk utilization to a private tab in per-client results
The disk util results are shared for all clients, so it's more
appropriate to put it in a tab.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 12:10:19 +0000 (13:10 +0100)]
Add thread number ID to appropriate network commands
The client doesn't necessarily have a 1:1 mapping between jobs
and its internal job representation, so allow it to tell the
various jobs apart.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Jens Axboe [Thu, 15 Mar 2012 11:37:35 +0000 (12:37 +0100)]
gfio: fix attempt to add multiple entries to disk util frame
Signed-off-by: Jens Axboe <axboe@kernel.dk>