Compare commits
10 Commits
b37e0ff198
...
fc415e41a1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fc415e41a1 | ||
|
|
c50afb0e22 | ||
|
|
555c017a24 | ||
|
|
6a4d810343 | ||
|
|
ed3d62e48e | ||
|
|
40d7c2e788 | ||
|
|
0144f2a734 | ||
|
|
51a25a6e20 | ||
|
|
aff2535665 | ||
|
|
ed80a17cda |
31
0001-fix-disk-stats-issue.patch
Normal file
31
0001-fix-disk-stats-issue.patch
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
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
|
||||||
|
|
||||||
31
0002-engines-http-fix-memory-leak.patch
Normal file
31
0002-engines-http-fix-memory-leak.patch
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
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
BIN
fio-3.30.tar.bz2
Binary file not shown.
BIN
fio-3.34.tar.bz2
Normal file
BIN
fio-3.34.tar.bz2
Normal file
Binary file not shown.
82
fio.spec
82
fio.spec
@ -1,19 +1,44 @@
|
|||||||
Name: fio
|
Name: fio
|
||||||
Version: 3.30
|
Version: 3.34
|
||||||
Release: 1
|
Release: 4
|
||||||
Summary: Versatile IO workload generator
|
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
|
|
||||||
BuildRequires: libaio-devel python3-devel zlib-devel librbd1-devel numactl-devel librdmacm-devel gcc
|
|
||||||
|
|
||||||
%ifarch x86_64
|
License: GPLv2
|
||||||
BuildRequires: libpmem-devel libpmemblk-devel
|
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
|
||||||
%endif
|
%endif
|
||||||
|
%ifarch x86_64 ppc64le
|
||||||
|
BuildRequires: libpmem-devel
|
||||||
|
BuildRequires: libpmemblk-devel
|
||||||
|
%endif
|
||||||
|
|
||||||
|
BuildRequires: make
|
||||||
|
Requires: python3-pandas
|
||||||
|
|
||||||
|
%global __provides_exclude_from ^%{_libdir}/fio/
|
||||||
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
fio is a tool used to spawn many threads or processes that perform a specific type
|
fio is an I/O tool that will spawn a number of threads or processes doing
|
||||||
of io operation specified by the user.It accepts many global parameters inherited
|
a particular type of io action as specified by the user. fio takes a
|
||||||
by threads.Its common method is to simulate jobs that match the specified io load.
|
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.
|
||||||
|
|
||||||
|
|
||||||
%package help
|
%package help
|
||||||
Summary: Help document for the fio
|
Summary: Help document for the fio
|
||||||
@ -31,25 +56,48 @@ pathfix.py -i %{__python3} -pn \
|
|||||||
tools/plot/fio2gnuplot \
|
tools/plot/fio2gnuplot \
|
||||||
t/steadystate_tests.py
|
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
|
%build
|
||||||
./configure --disable-optimizations
|
./configure --disable-optimizations --dynamic-libengines
|
||||||
export EXTFLAGS="$RPM_OPT_FLAGS" LDFLAGS="$RPM_LD_FLAGS"
|
|
||||||
%make_build V=1
|
EXTFLAGS="$RPM_OPT_FLAGS" LDFLAGS="$RPM_LD_FLAGS" make V=1 %{?_smp_mflags}
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%make_install prefix=%{_prefix} mandir=%{_mandir}
|
make install prefix=%{_prefix} mandir=%{_mandir} libdir=%{_libdir}/fio DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p"
|
||||||
|
|
||||||
|
%check
|
||||||
|
make test
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%doc COPYING
|
%doc COPYING
|
||||||
%dir %{_datadir}/%{name}
|
%dir %{_datadir}/%{name}
|
||||||
%{_bindir}/*
|
%{_bindir}/*
|
||||||
%{_datadir}/%{name}/*
|
%{_datadir}/%{name}/*
|
||||||
|
%{_libdir}/fio/*.so
|
||||||
|
|
||||||
%files help
|
%files help
|
||||||
%doc REPORTING-BUGS examples MORAL-LICENSE GFIO-TODO SERVER-TODO STEADYSTATE-TODO
|
%doc REPORTING-BUGS examples MORAL-LICENSE GFIO-TODO SERVER-TODO STEADYSTATE-TODO
|
||||||
%{_mandir}/man1/*
|
%{_mandir}/man1/*
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%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
|
* Sun Aug 14 2022 tianlijing <tianlijing@kylinos.cn> - 3.30-1
|
||||||
- upgrade to 3.30
|
- upgrade to 3.30
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user