diff --git a/.accel-config.metadata b/.accel-config.metadata
index 3176c16..5b8780c 100644
--- a/.accel-config.metadata
+++ b/.accel-config.metadata
@@ -1 +1 @@
-473693e27ca430ea231315da428ba343e1cd5efa SOURCES/accel-config-v3.1.tar.gz
+123eb9366ba96580e4795e47f0742551d50cbf53 SOURCES/accel-config-v3.4.2.tar.gz
diff --git a/.gitignore b/.gitignore
index bec8d9e..097b374 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-SOURCES/accel-config-v3.1.tar.gz
+SOURCES/accel-config-v3.4.2.tar.gz
diff --git a/SOURCES/0001-accel-config-clean-up-double-frees-in-add_group.patch b/SOURCES/0001-accel-config-clean-up-double-frees-in-add_group.patch
new file mode 100644
index 0000000..876b1ac
--- /dev/null
+++ b/SOURCES/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 <jsnitsel@redhat.com>
+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 <jsnitsel@redhat.com>
+---
+ 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/SOURCES/0001-testing-vercheck.patch b/SOURCES/0001-testing-vercheck.patch
new file mode 100644
index 0000000..b5e188b
--- /dev/null
+++ b/SOURCES/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/SOURCES/0003-accel-config-remove-redundant-assignment-in-umwait.patch b/SOURCES/0003-accel-config-remove-redundant-assignment-in-umwait.patch
new file mode 100644
index 0000000..2045397
--- /dev/null
+++ b/SOURCES/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 <jsnitsel@redhat.com>
+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 <jsnitsel@redhat.com>
+---
+ 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/SPECS/accel-config.spec b/SPECS/accel-config.spec
index 1e223f4..75e1f4a 100644
--- a/SPECS/accel-config.spec
+++ b/SPECS/accel-config.spec
@@ -1,15 +1,18 @@
 %global	project_name	idxd-config
 
 Name:		accel-config
-Version:	3.1
+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
+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
@@ -34,7 +37,7 @@ Utility library for configuring the accelerator subsystem.
 
 %package devel
 Summary:	Development files for libaccfg
-License:	LGPLv2
+License:	LGPLv2+
 Requires:	%{name}-libs%{?_isa} = %{version}-%{release}
 
 %description devel
@@ -46,19 +49,27 @@ developing applications that use %{name}.
 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
+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
+%configure --disable-static --disable-silent-rules --enable-test
 %make_build
 
 %install
@@ -70,6 +81,7 @@ 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
@@ -77,6 +89,7 @@ make check
 %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
@@ -85,7 +98,16 @@ make check
 %{_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 <jsnitsel@redhat.com> - 3.4.2-1
+- Rebase to 3.4.2 and add test subpackage.
+resolves: rhbz#1971910
+
 * Tue May 18 2021 Jerry Snitselaar <jsnitsel@redhat.com> - 3.1-1
 - Rebase to 3.1 release.
 resolves: rhbz#1920762