From 8e7139cab89fff9f6ea1e58771634691e297a65f Mon Sep 17 00:00:00 2001 From: James Antill Date: Thu, 26 May 2022 00:48:15 -0400 Subject: [PATCH] Auto sync2gitlab import of accel-config-3.4.2-1.el8.src.rpm --- .gitignore | 1 + ...g-clean-up-double-frees-in-add_group.patch | 34 +++++ 0001-testing-vercheck.patch | 24 ++++ ...emove-redundant-assignment-in-umwait.patch | 27 ++++ EMPTY | 1 - accel-config.spec | 116 ++++++++++++++++++ sources | 1 + 7 files changed, 203 insertions(+), 1 deletion(-) create mode 100644 .gitignore create mode 100644 0001-accel-config-clean-up-double-frees-in-add_group.patch create mode 100644 0001-testing-vercheck.patch create mode 100644 0003-accel-config-remove-redundant-assignment-in-umwait.patch delete mode 100644 EMPTY create mode 100644 accel-config.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f7d6d3d --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/accel-config-v3.4.2.tar.gz diff --git a/0001-accel-config-clean-up-double-frees-in-add_group.patch b/0001-accel-config-clean-up-double-frees-in-add_group.patch new file mode 100644 index 0000000..876b1ac --- /dev/null +++ b/0001-accel-config-clean-up-double-frees-in-add_group.patch @@ -0,0 +1,34 @@ +From a073b40ea293dec87af5f887bb90744ed244e0c9 Mon Sep 17 00:00:00 2001 +From: Jerry Snitselaar +Date: Mon, 18 Oct 2021 15:10:00 -0700 +Subject: [PATCH 1/3] accel-config: clean up double frees in add_group + +free(group) is called after jumping to the err_group label, +so don't call free(group) in paths jumping there. + +Signed-off-by: Jerry Snitselaar +--- + accfg/lib/libaccfg.c | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/accfg/lib/libaccfg.c b/accfg/lib/libaccfg.c +index f4fc17e5ca93..a13be34a7ef5 100644 +--- a/accfg/lib/libaccfg.c ++++ b/accfg/lib/libaccfg.c +@@ -870,13 +870,11 @@ static void *add_group(void *parent, int id, const char *group_base, + group_base_string = strdup(group_base); + if (!group_base_string) { + err(ctx, "conversion of group_base_string failed\n"); +- free(group); + close(dfd); + goto err_group; + } + if (sscanf(basename(group_base_string), + "group%" SCNu64 ".%" SCNu64, &device_id, &group_id) != 2) { +- free(group); + close(dfd); + goto err_group; + } +-- +2.33.0 + diff --git a/0001-testing-vercheck.patch b/0001-testing-vercheck.patch new file mode 100644 index 0000000..b5e188b --- /dev/null +++ b/0001-testing-vercheck.patch @@ -0,0 +1,24 @@ +diff -ur idxd-config-accel-config-v3.4.2/test/dsa_user_test_runner.sh idxd-config-accel-config-v3.4.2-new/test/dsa_user_test_runner.sh +--- idxd-config-accel-config-v3.4.2/test/dsa_user_test_runner.sh 2021-09-28 16:03:05.000000000 -0700 ++++ idxd-config-accel-config-v3.4.2-new/test/dsa_user_test_runner.sh 2021-10-13 08:26:34.098233734 -0700 +@@ -14,7 +14,7 @@ + + [ ! -f "$DSATEST" ] && echo "fail: $LINENO" && exit 1 + +-check_min_kver "5.6" || do_skip "kernel does not support idxd" ++check_min_kver "4.18" || do_skip "kernel does not support idxd" + + # skip if no pasid support as dsa_test does not support operation w/o pasid yet. + [ ! -f "/sys/bus/dsa/devices/$DSA/pasid_enabled" ] && echo "No SVM support" && exit "$EXIT_SKIP" +diff -ur idxd-config-accel-config-v3.4.2/test/libaccfg.c idxd-config-accel-config-v3.4.2-new/test/libaccfg.c +--- idxd-config-accel-config-v3.4.2/test/libaccfg.c 2021-09-28 16:03:05.000000000 -0700 ++++ idxd-config-accel-config-v3.4.2-new/test/libaccfg.c 2021-10-13 08:27:08.099387351 -0700 +@@ -1003,7 +1003,7 @@ + struct kmod_module *mod, *mdev_mod; + struct accfg_device *device; + +- if (!accfg_test_attempt(test, KERNEL_VERSION(5, 6, 0))) ++ if (!accfg_test_attempt(test, KERNEL_VERSION(4, 18, 0))) + return EXIT_SKIP; + + accfg_set_log_priority(ctx, loglevel); diff --git a/0003-accel-config-remove-redundant-assignment-in-umwait.patch b/0003-accel-config-remove-redundant-assignment-in-umwait.patch new file mode 100644 index 0000000..2045397 --- /dev/null +++ b/0003-accel-config-remove-redundant-assignment-in-umwait.patch @@ -0,0 +1,27 @@ +From dc03a40adfaaded6c3e2d9bb0bff2218b187daae Mon Sep 17 00:00:00 2001 +From: Jerry Snitselaar +Date: Mon, 18 Oct 2021 15:47:27 -0700 +Subject: [PATCH 3/3] accel-config: remove redundant assignment in umwait + +Signed-off-by: Jerry Snitselaar +--- + test/dsa.c | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/test/dsa.c b/test/dsa.c +index 5396b1b97d3a..961f5a73990e 100644 +--- a/test/dsa.c ++++ b/test/dsa.c +@@ -393,9 +393,6 @@ static inline int umwait(unsigned long timeout, unsigned int state) + uint32_t timeout_low = (uint32_t)timeout; + uint32_t timeout_high = (uint32_t)(timeout >> 32); + +- timeout_low = (uint32_t)timeout; +- timeout_high = (uint32_t)(timeout >> 32); +- + asm volatile(".byte 0xf2, 0x48, 0x0f, 0xae, 0xf1\t\n" + "setc %0\t\n" + : "=r"(r) +-- +2.33.0 + diff --git a/EMPTY b/EMPTY deleted file mode 100644 index 0519ecb..0000000 --- a/EMPTY +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/accel-config.spec b/accel-config.spec new file mode 100644 index 0000000..75e1f4a --- /dev/null +++ b/accel-config.spec @@ -0,0 +1,116 @@ +%global project_name idxd-config + +Name: accel-config +Version: 3.4.2 +Release: 1%{?dist} +Summary: Configure accelerator subsystem devices +# The entire source code is under GPLv2 except for accel-config +# library which is mostly LGPLv2, ccan/list which is BSD-MIT and +# the rest of ccan which is CC0. +License: GPLv2 and LGPLv2+ and MIT and CC0 +URL: https://github.com/intel/%{project_name} +Source0: %{URL}/archive/%{name}-v%{version}.tar.gz +Patch0: 0001-testing-vercheck.patch +Patch1: 0001-accel-config-clean-up-double-frees-in-add_group.patch +Patch2: 0003-accel-config-remove-redundant-assignment-in-umwait.patch + +Requires: %{name}-libs%{?_isa} = %{version}-%{release} +BuildRequires: gcc +BuildRequires: autoconf +BuildRequires: asciidoc +BuildRequires: xmlto +BuildRequires: automake +BuildRequires: libtool +BuildRequires: pkgconfig +BuildRequires: pkgconfig(libkmod) +BuildRequires: pkgconfig(uuid) +BuildRequires: pkgconfig(json-c) +BuildRequires: pkgconfig(libudev) +BuildRequires: systemd + +# accel-config is for configuring Intel DSA (Data-Streaming +# Accelerator) subsystem in the Linux kernel. It supports x86 only. +ExclusiveArch: %{ix86} x86_64 + +%description +Utility library for configuring the accelerator subsystem. + +%package devel +Summary: Development files for libaccfg +License: LGPLv2+ +Requires: %{name}-libs%{?_isa} = %{version}-%{release} + +%description devel +The %{name}-devel package contains libraries and header files for +developing applications that use %{name}. + + +%package libs +Summary: Configuration library for accelerator subsystem devices +# All source code of configuration library is LGPLv2, except +# ccan/list which is BSD-MIT and the rest of ccan/ which is CC0. +License: LGPLv2+ and MIT and CC0 +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description libs +Libraries for %{name}. + +%package test +Summary: Tests for accel-config +License: GPLv2 +Requires: %{name}-libs%{?_isa} = %{version}-%{release} + +%description test +Tests for accel-config command. + +%prep +%autosetup -p1 -n %{project_name}-%{name}-v%{version} + +%build +echo %{version} > version +./autogen.sh +%configure --disable-static --disable-silent-rules --enable-test +%make_build + +%install +%make_install +find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';' + +%check +make check + +%files +%license Documentation/COPYING licenses/BSD-MIT licenses/CC0 +%license licenses/accel-config-licenses LICENSE_GPL_2_0 +%{_bindir}/%{name} +%{_mandir}/man1/%{name}* +%{_sysconfdir}/%{name}/%{name}.conf.sample + +%files libs +%doc README.md +%license Documentation/COPYING licenses/BSD-MIT licenses/CC0 +%license licenses/libaccel-config-licenses accfg/lib/LICENSE_LGPL_2_1 +%{_libdir}/lib%{name}.so.* + +%files devel +%license Documentation/COPYING +%{_includedir}/%{name}/ +%{_libdir}/lib%{name}.so +%{_libdir}/pkgconfig/lib%{name}.pc + +%files test +%license Documentation/COPYING LICENSE_GPL_2_0 +#%doc test/README.md +%{_datadir}/accel-config/test/* + +%changelog +* Thu Sep 09 2021 Jerry Snitselaar - 3.4.2-1 +- Rebase to 3.4.2 and add test subpackage. +resolves: rhbz#1971910 + +* Tue May 18 2021 Jerry Snitselaar - 3.1-1 +- Rebase to 3.1 release. +resolves: rhbz#1920762 + +* Fri Nov 6 2020 Yunying Sun - 2.8-1 +- Initial Packaging diff --git a/sources b/sources new file mode 100644 index 0000000..cb24280 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (accel-config-v3.4.2.tar.gz) = e1f4d5b43a28cf2f82b93665e126e1c02127ad78ac0ab78049f687bbcebec8866796adbd32e031dccbe48508bb0b96e5cc8de27ef891e121639bcb2fd498268e