Recent changes (master)
The following changes since commit 7627557b4795971e0a7565f51415697c71d27c6b:
buffer: only set refill_buffers, it it wasn't set manually (2015-07-10 09:27:02 -0600)
are available in the git repository at:
git://git.kernel.dk/fio.git master
for you to fetch changes up to 4fbe186054f09654f31c9a77b743d2aa40c85e54:
HOWTO: spelling error (2015-07-13 14:35:30 -0600)
----------------------------------------------------------------
Jens Axboe (3):
Update README for DragonFly
HOWTO: fix long line
HOWTO: spelling error
Logan Gunthorpe (2):
Error when the block size on the RDMA server is less than the client RDMA engine server mode flow fix ups.
HOWTO | 6 +++--- README | 7 ++++--- engines/rdma.c | 53 +++++++++++++++++++++++++++++++++++++++++++++-------- eta.c | 13 +++++++++++-- fio.h | 1 + 5 files changed, 64 insertions(+), 16 deletions(-)
---
Diff of recent changes:
HOWTO +3 -3
@@ -198,7 +198,7 @@ sections. ------------------------- fio also supports environment variable expansion in job files. Any -substring of the form "${VARNAME}" as part of an option value (in other +sub-string of the form "${VARNAME}" as part of an option value (in other words, on the right of the `='), will be expanded to the value of the environment variable called VARNAME. If no such environment variable is defined, or VARNAME is the empty string, the empty string will be
@@ -875,8 +875,8 @@ fsync=int If writing to a file, issue a sync of the dirty data fdatasync=int Like fsync= but uses fdatasync() to only sync data and not metadata blocks. - In FreeBSD and Windows there is no fdatasync(), this falls back to - using fsync() + In FreeBSD and Windows there is no fdatasync(), this falls back + to using fsync() sync_file_range=str:val Use sync_file_range() for every 'val' number of write operations. Fio will track range of writes that
README +4 -3
@@ -345,9 +345,10 @@ Platforms --------- Fio works on (at least) Linux, Solaris, AIX, HP-UX, OSX, NetBSD, OpenBSD, -Windows and FreeBSD. Some features and/or options may only be available on -some of the platforms, typically because those features only apply to that -platform (like the solarisaio engine, or the splice engine on Linux). +Windows, FreeBSD, and DragonFly. Some features and/or options may only be +available on some of the platforms, typically because those features only +apply to that platform (like the solarisaio engine, or the splice engine on +Linux). Some features are not available on FreeBSD/Solaris even if they could be implemented, I'd be happy to take patches for that. An example of that is
engines/rdma.c +45 -8
159 lines not on this page · raw message
eta.c +11 -2
@@ -123,6 +123,11 @@ void eta_to_str(char *str, unsigned long eta_sec)unsigned int d, h, m, s;int disp_hour =0 ; +if (eta_sec ==-1 ) { +sprintf (str,"--" ); +return ; + } + s = eta_sec %60 ; eta_sec /=60 ; m = eta_sec %60 ;
@@ -146,7 +151,7 @@ void eta_to_str(char *str, unsigned long eta_sec)/* * Best effort calculation of the estimated pending runtime of a job. */ -static int thread_eta (struct thread_data *td) +static unsigned long thread_eta (struct thread_data *td) {unsigned long long bytes_total, bytes_done;unsigned long eta_sec =0 ;
@@ -158,6 +163,9 @@ static int thread_eta(struct thread_data *td) bytes_total = td->total_io_size; +if (td->flags &TD_F_NO_PROGRESS ) +return -1 ; +if (td->o.fill_device && td->o.size ==-1ULL ) {if (!td->fill_device_size || td->fill_device_size ==-1ULL )return 0 ;
@@ -513,7 +521,8 @@ void display_thread_status(struct jobs_eta *je)int l;int ddir; -if ((!je->eta_sec && !eta_good) || je->nr_ramp == je->nr_running) +if ((!je->eta_sec && !eta_good) || je->nr_ramp == je->nr_running || + je->eta_sec ==-1 )strcpy (perc_str,"-.-% done" );else {double mult =100.0 ;
fio.h +1 -0
@@ -78,6 +78,7 @@ enum {TD_F_VSTATE_SAVED =1U <<10 ,TD_F_NEED_LOCK =1U <<11 ,TD_F_CHILD =1U <<12 , + TD_F_NO_PROGRESS = 1U << 13, }; enum {