RHEL 9.0.0 Alpha bootstrap

The content of this branch was automatically imported from Fedora ELN
with the following as its source:
https://src.fedoraproject.org/rpms/fio#743767f53457907b0a31772bf3fad8cc75e3252b
This commit is contained in:
Troy Dawson 2020-11-16 12:56:36 -08:00
parent c67cd16e78
commit f7c0c3c765
4 changed files with 54 additions and 66 deletions

1
.gitignore vendored
View File

@ -23,3 +23,4 @@
/fio-3.20.tar.bz2
/fio-3.21.tar.bz2
/fio-3.23.tar.bz2
/fio-3.24.tar.bz2

View File

@ -1,32 +0,0 @@
From 1b2f9943db0d74f4533567b7c8ed54d9c343e3f0 Mon Sep 17 00:00:00 2001
From: Yigal Korman <ykorman@gmail.com>
Date: Thu, 17 Sep 2020 21:55:14 +0300
Subject: [PATCH] fio: fix dynamic engines soname definition
The SONAME of the engines should not match the name of the dependent
library. Otherwise it confuses the dynamic loader into thinking the
dependency is already resolved.
Prefixing the name with fio make more sense here.
Signed-off-by: Yigal Korman <ykorman@gmail.com>
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index 8e1ebc90..e2d0833c 100644
--- a/Makefile
+++ b/Makefile
@@ -256,7 +256,7 @@ define engine_template =
$(1)_OBJS := $$($(1)_SRCS:.c=.o)
$$($(1)_OBJS): CFLAGS := -fPIC $$($(1)_CFLAGS) $(CFLAGS)
engines/lib$(1).so: $$($(1)_OBJS)
- $$(QUIET_LINK)$(CC) -shared -rdynamic -fPIC -Wl,-soname,lib$(1).so.1 $$($(1)_LIBS) -o $$@ $$<
+ $$(QUIET_LINK)$(CC) -shared -rdynamic -fPIC -Wl,-soname,fio-$(1).so.1 $$($(1)_LIBS) -o $$@ $$<
ENGS_OBJS += engines/lib$(1).so
all install: $(ENGS_OBJS)
endef
--
2.17.1

View File

@ -1,15 +1,12 @@
Name: fio
Version: 3.23
Release: 5%{?dist}
Version: 3.24
Release: 1%{?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
# Not upstream yet, see:
# https://bugzilla.redhat.com/show_bug.cgi?id=1884954#c8
Patch1: 0001-fio-fix-dynamic-engines-soname-definition.patch
BuildRequires: gcc
BuildRequires: libaio-devel
@ -23,7 +20,7 @@ BuildRequires: libpmem-devel
BuildRequires: libpmemblk-devel
%endif
%ifnarch %{arm} i686
%ifnarch %{arm} %{ix86}
BuildRequires: librbd1-devel
%endif
@ -40,13 +37,12 @@ BuildRequires: librdmacm-devel
# subpackages, but allows the engines to be uninstalled if not needed
# or if the dependencies are too onerous.
Recommends: %{name}-engine-libaio
Recommends: %{name}-engine-http
Recommends: %{name}-engine-nbd
%ifarch x86-64
Recommends: %{name}-engine-dev-dax
Recommends: %{name}-engine-http
%endif
Recommends: %{name}-engine-nbd
%ifarch x86_64
Recommends: %{name}-engine-pmemblk
Recommends: %{name}-engine-libpmem
%endif
%ifnarch %{arm} %{ix86}
Recommends: %{name}-engine-rados
@ -71,21 +67,12 @@ Requires: %{name}%{?_isa} = %{version}-%{release}
%description engine-libaio
Linux libaio engine for %{name}.
%ifarch x86_64
%package engine-dev-dax
Summary: PMDK dev-dax engine for %{name}.
Requires: %{name}%{?_isa} = %{version}-%{release}
%description engine-dev-dax
PMDK dev-dax engine for %{name}.
%package engine-http
Summary: HTTP engine for %{name}.
Requires: %{name}%{?_isa} = %{version}-%{release}
%description engine-http
HTTP engine for %{name}.
%endif
%package engine-nbd
Summary: Network Block Device engine for %{name}.
@ -94,13 +81,37 @@ Requires: %{name}%{?_isa} = %{version}-%{release}
%description engine-nbd
Network Block Device (NBD) engine for %{name}.
%ifarch x86_64
%package engine-dev-dax
Summary: PMDK dev-dax engine for %{name}.
Requires: %{name}%{?_isa} = %{version}-%{release}
%description engine-dev-dax
dev-dax engine for %{name}.
Read and write using device DAX to a persistent memory device
(e.g., /dev/dax0.0) through the PMDK libpmem library.
%endif
%ifarch x86_64
%package engine-pmemblk
Summary: PMDK pmemblk engine for %{name}.
Requires: %{name}%{?_isa} = %{version}-%{release}
%description engine-pmemblk
PMDK pmemblk engine for %{name}.
pmemblk engine for %{name}.
Read and write using filesystem DAX to a file on a filesystem mounted with
DAX on a persistent memory device through the PMDK libpmemblk library.
%endif
%ifarch x86_64
%package engine-libpmem
Summary: PMDK pmemblk engine for %{name}.
Requires: %{name}%{?_isa} = %{version}-%{release}
%description engine-libpmem
libpmem engine for %{name}.
Read and write using mmap I/O to a file on a filesystem mounted with DAX
on a persistent memory device through the PMDK libpmem library.
%endif
%ifnarch %{arm} %{ix86}
@ -138,9 +149,8 @@ pathfix.py -i %{__python3} -pn \
tools/plot/fio2gnuplot \
t/steadystate_tests.py
# Edit /usr/lib path in os/os-linux.h to match Fedora conventions.
sed -e 's,/usr/lib/,%{_libdir}/,g' -i os/os-linux.h
# 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 --enable-libnbd --dynamic-libengines
@ -159,39 +169,48 @@ make install prefix=%{_prefix} mandir=%{_mandir} libdir=%{_libdir}/fio DESTDIR=$
%{_mandir}/man1/*
%{_datadir}/%{name}/*
%files engine-libaio
%{_libdir}/fio/libaio.so
%ifarch x86_64
%files engine-dev-dax
%{_libdir}/fio/libdev-dax.so
%{_libdir}/fio/fio-dev-dax.so
%endif
%files engine-http
%{_libdir}/fio/libhttp.so
%{_libdir}/fio/fio-http.so
%files engine-libaio
%{_libdir}/fio/fio-libaio.so
%ifarch x86_64
%files engine-libpmem
%{_libdir}/fio/fio-libpmem.so
%endif
%files engine-nbd
%{_libdir}/fio/libnbd.so
%{_libdir}/fio/fio-nbd.so
%ifarch x86_64
%files engine-pmemblk
%{_libdir}/fio/libpmemblk.so
%{_libdir}/fio/fio-pmemblk.so
%endif
%ifnarch %{arm} %{ix86}
%files engine-rados
%{_libdir}/fio/librados.so
%{_libdir}/fio/fio-rados.so
%files engine-rbd
%{_libdir}/fio/librbd.so
%{_libdir}/fio/fio-rbd.so
%endif
%ifnarch %{arm}
%files engine-rdma
%{_libdir}/fio/librdma.so
%{_libdir}/fio/fio-rdma.so
%endif
%changelog
* Thu Nov 12 2020 Eric Sandeen <sandeen@redhat.com> 3.24-1
- New upstream version
- Fix dynamic engine loading (#bz1894616)
* Mon Oct 05 2020 Richard W.M. Jones <rjones@redhat.com> 3.23-5
- Disable automatic provides for fio engines (RHBZ#1884954).
- Apply patch to change SONAME of fio engines (see comment 8 of above bug).

View File

@ -1 +1 @@
SHA512 (fio-3.23.tar.bz2) = 242ce7b6673243e8544610619806490da6c527f86cebc803442c7504845ba5dcc186bb404da33c40a263f9558543497efc757cf10c370f66e2de330d7e149610
SHA512 (fio-3.24.tar.bz2) = 909131ed70cd2c3874138c9f8e005d184bf2afa7de4ffd3dd1251b09f3ba45e34caaefc2e6b63261b3b1284e1f5a9ab6219f697780ddbd890f103187d7cbf7c9