New upstream version + bugfix

This commit is contained in:
Eric Sandeen 2020-04-16 20:46:36 -05:00
parent 3e758d8573
commit 1e8b40e50c
4 changed files with 64 additions and 7 deletions

1
.gitignore vendored
View File

@ -19,3 +19,4 @@
/fio-3.16.tar.bz2
/fio-3.17.tar.bz2
/fio-3.18.tar.bz2
/fio-3.19.tar.bz2

View File

@ -0,0 +1,52 @@
From 640150c1b2c3cdbdd8baa5f1f3e7214a5c9a6533 Mon Sep 17 00:00:00 2001
From: Vincent Fu <vincent.fu@wdc.com>
Date: Tue, 31 Mar 2020 07:26:16 -0400
Subject: [PATCH] stat: eliminate extra log samples
b2a432bfbb6d inadvertently added extra log samples.
$ ./fio-canonical/fio --name=test --time_based --runtime=10s --write_lat_log=fio-07-b2a432 --log_avg_msec=1000 --size=1G --rw=rw
test: (g=0): rw=rw, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=psync, iodepth=1
fio-3.17-93-gb2a4
Starting 1 process
...
$ cat fio-07-b2a432_clat.1.log
1000, 5851, 0, 0, 0
1000, 2551, 1, 0, 0
1000, 5028, 1, 0, 0
2000, 4175, 0, 0, 0
2000, 3214, 1, 0, 0
2000, 60619, 0, 0, 0
...
There should only be two lines at each timestamp (one for reads, one for
writes), but the first two timestamps have three lines each.
The cause is an inadvertent change in stat.c:add_log_sample() of
__add_stat_to_log to _add_stat_to_log. Reverting to the two-underscore
version resolves this issue.
Fixes: https://github.com/axboe/fio/issues/947
Fixes: b2a432bfbb6d ("Per-command priority: Priority logging and libaio/io_uring cmdprio_percentage")
Signed-off-by: Vincent Fu <vincent.fu@wdc.com>
---
stat.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/stat.c b/stat.c
index d8c01d14..efa811d2 100644
--- a/stat.c
+++ b/stat.c
@@ -2749,7 +2749,7 @@ static unsigned long add_log_sample(struct thread_data *td,
return diff;
}
- _add_stat_to_log(iolog, elapsed, td->o.log_max != 0, priority_bit);
+ __add_stat_to_log(iolog, ddir, elapsed, td->o.log_max != 0, priority_bit);
iolog->avg_last[ddir] = elapsed - (this_window - iolog->avg_msec);
return iolog->avg_msec;
--
2.17.1

View File

@ -1,12 +1,14 @@
Name: fio
Version: 3.18
Release: 1%{?dist}
Version: 3.19
Release: 2%{?dist}
Summary: Multithreaded IO generation tool
License: GPLv2
URL: http://git.kernel.dk/?p=fio.git;a=summary
Source: http://brick.kernel.dk/snaps/%{name}-%{version}.tar.bz2
Patch0: fio-eliminate-extra-log-samples.patch
BuildRequires: gcc
BuildRequires: libaio-devel
BuildRequires: zlib-devel
@ -26,9 +28,6 @@ BuildRequires: numactl-devel
BuildRequires: librdmacm-devel
%endif
Patch0: fix-io_uring-build.patch
Patch1: fix-fio-globals.patch
%description
fio is an I/O tool that will spawn a number of threads or processes doing
a particular type of io action as specified by the user. fio takes a
@ -40,7 +39,6 @@ one wants to simulate.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
pathfix.py -i %{__python3} -pn \
tools/fio_jsonplus_clat2csv \
@ -65,6 +63,12 @@ make install prefix=%{_prefix} mandir=%{_mandir} DESTDIR=$RPM_BUILD_ROOT INSTALL
%{_datadir}/%{name}/*
%changelog
* Thu Apr 16 2020 Eric Sandeen <sandeen@redhat.com> 3.19-2
- Bugfix update: stat: eliminate extra log samples
* Thu Mar 12 2020 Eric Sandeen <sandeen@redhat.com> 3.19-1
- New upstream version
* Thu Feb 13 2020 Eric Sandeen <sandeen@redhat.com> 3.18-1
- New upstream version
- Fix gcc10 build

View File

@ -1 +1 @@
SHA512 (fio-3.18.tar.bz2) = 11b689bfc873716bd3f06f46652facf7a1cf6928bc251d9b394fac4afb77497043dc3a083fe69a940cba26080eee5fd56ad5bfdf8d1c2dfd3d5d94414d7b5922
SHA512 (fio-3.19.tar.bz2) = 0004dbaf5a8ce4f2b13114a3bfb65c388bb6d01e9a82791208ff7e7eb54cd6741e60cc8cb0a19f6319301ee2040c03862725943972ea767e6cc65fce4a2b3ecb