Compare commits

..

No commits in common. "fc415e41a12f5a68d96a7099d22b4baad2fc2d94" and "b37e0ff198373d25c6d6e3cfa5a4e3b181a7f3ef" have entirely different histories.

5 changed files with 17 additions and 127 deletions

View File

@ -1,31 +0,0 @@
From c492cb1a9b1c327e985c89eb517d58bd5323880c Mon Sep 17 00:00:00 2001
From: Yong Gang <yygcode@gmail.com>
Date: Tue, 16 Apr 2024 14:11:37 +0800
Subject: [PATCH] iolog: fix disk stats issue
In the iolog replay scenario, the disk util in the td structure is
not initialized, resulting in the disk stats not being correctly
updated.
Fixes: #1735
Signed-off-by: Yong Gang <yygcode@gmail.com>
---
iolog.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/iolog.c b/iolog.c
index cc2cbc6..66c8007 100644
--- a/iolog.c
+++ b/iolog.c
@@ -812,6 +812,8 @@ bool init_iolog(struct thread_data *td)
if (!ret)
td_verror(td, EINVAL, "failed initializing iolog");
+ init_disk_util(td);
+
return ret;
}
--
2.27.0

View File

@ -1,31 +0,0 @@
From 9e66b0606cad74cb98dc44cb91903432171585a9 Mon Sep 17 00:00:00 2001
From: Pavel Reichl <preichl@redhat.com>
Date: Thu, 14 Dec 2023 22:10:25 +0100
Subject: engines/http: Fix memory leak
Reference:https://git.kernel.org/pub/scm/linux/kernel/git/axboe/fio.git/patch/?id=9e66b0606cad74cb98dc44cb91903432171585a9
Found by Red Hat's OpenScanHub:
fio-3.35/engines/http.c:253: leaked_storage: Variable r going out of scope leaks the storage it points to.
Signed-off-by: Pavel Reichl <preichl@redhat.com>
---
engines/http.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/engines/http.c b/engines/http.c
index 56dc7d1..83cfe8b 100644
--- a/engines/http.c
+++ b/engines/http.c
@@ -250,6 +250,7 @@ static char *_aws_uriencode(const char *uri)
for (i = 0; (c = uri[i]); i++) {
if (n > bufsize-5) {
log_err("encoding the URL failed\n");
+ free(r);
return NULL;
}
--
2.27.0

BIN
fio-3.30.tar.bz2 Normal file

Binary file not shown.

Binary file not shown.

View File

@ -1,44 +1,19 @@
Name: fio
Version: 3.34
Release: 4
Summary: Multithreaded IO generation tool
Name: fio
Version: 3.30
Release: 1
Summary: Versatile IO workload generator
License: GPLv2
URL: http://git.kernel.dk/?p=fio.git;a=summary
Source: http://brick.kernel.dk/snaps/%{name}-%{version}.tar.bz2
BuildRequires: libaio-devel python3-devel zlib-devel librbd1-devel numactl-devel librdmacm-devel gcc
License: GPLv2
URL: http://git.kernel.dk/?p=fio.git;a=summary
Source0: http://brick.kernel.dk/snaps/%{name}-%{version}.tar.bz2
#https://github.com/axboe/fio/pull/1736
Patch0001: 0001-fix-disk-stats-issue.patch
Patch0002: 0002-engines-http-fix-memory-leak.patch
BuildRequires: gcc
BuildRequires: libaio-devel
BuildRequires: zlib-devel
BuildRequires: python3-devel
BuildRequires: libcurl-devel
BuildRequires: openssl-devel
%ifnarch s390
BuildRequires: gperftools-devel
%ifarch x86_64
BuildRequires: libpmem-devel libpmemblk-devel
%endif
%ifarch x86_64 ppc64le
BuildRequires: libpmem-devel
BuildRequires: libpmemblk-devel
%endif
BuildRequires: make
Requires: python3-pandas
%global __provides_exclude_from ^%{_libdir}/fio/
%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
number of global parameters, each inherited by the thread unless
otherwise parameters given to them overriding that setting is given.
The typical use of fio is to write a job file matching the io load
one wants to simulate.
fio is a tool used to spawn many threads or processes that perform a specific type
of io operation specified by the user.It accepts many global parameters inherited
by threads.Its common method is to simulate jobs that match the specified io load.
%package help
Summary: Help document for the fio
@ -56,48 +31,25 @@ pathfix.py -i %{__python3} -pn \
tools/plot/fio2gnuplot \
t/steadystate_tests.py
# Edit /usr/local/lib path in os/os-linux.h to match Fedora conventions.
sed -e 's,/usr/local/lib/,%{_libdir}/,g' -i os/os-linux.h
%build
./configure --disable-optimizations --dynamic-libengines
EXTFLAGS="$RPM_OPT_FLAGS" LDFLAGS="$RPM_LD_FLAGS" make V=1 %{?_smp_mflags}
./configure --disable-optimizations
export EXTFLAGS="$RPM_OPT_FLAGS" LDFLAGS="$RPM_LD_FLAGS"
%make_build V=1
%install
make install prefix=%{_prefix} mandir=%{_mandir} libdir=%{_libdir}/fio DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p"
%check
make test
%make_install prefix=%{_prefix} mandir=%{_mandir}
%files
%doc COPYING
%dir %{_datadir}/%{name}
%{_bindir}/*
%{_datadir}/%{name}/*
%{_libdir}/fio/*.so
%files help
%doc REPORTING-BUGS examples MORAL-LICENSE GFIO-TODO SERVER-TODO STEADYSTATE-TODO
%{_mandir}/man1/*
%changelog
* Wed Jun 5 2024 zhangyaqi <zhangyaqi@kylinos.cn> - 3.34-4
- engines/http: Fix memory leak
* Tue Apr 16 2024 cenhuilin <cenhuilin@kylinos.cn> - 3.34-3
- iolog: fix disk stats issue
* Tue Mar 5 2024 wangxiaomeng <wangxiaomeng@klinos.cn> - 3.34-2
- Add BuildRequires gperftools-devel to link tcmalloc.
* Thu Apr 27 2023 liyanan <thistleslyn@163.com> - 3.34-1
- Update to 3.34
* Sun Nov 6 2022 huyab<1229981468@qq.com> - 3.32-1
- update version to 3.32-1
* Sun Aug 14 2022 tianlijing <tianlijing@kylinos.cn> - 3.30-1
- upgrade to 3.30