Resolves: RHEL-42605

This commit is contained in:
Martin Cermak 2024-06-17 21:10:44 +02:00
parent 0ffbb1f0c6
commit 3d014b677f
3 changed files with 87 additions and 3 deletions

75
RHEL-42605.patch Normal file
View File

@ -0,0 +1,75 @@
commit 0c437c7e2d02772615d73d1be1c3100d4c1de254
Author: William Cohen <wcohen@redhat.com>
Date: Tue Jun 4 09:46:41 2024 -0400
Address changes in Linux 6.10 /include/linux/vmalloc.h
Upstream linux kernel git commit 88ae5fb755b0d contains a number of
changes in /include/linux/vmalloc.h that affect vmalloc, vmalloc_node,
and vzalloc_node definitions. These are no longer functions but
macros and cannot be found in the list of symbols exported by the
kernel. Support for vzalloc, vmalloc_node, and vzalloc_node has been
in kernels since Linux 2.6.37. Given that systemtap requires Linux
3.10 or newer there is no longer a need to check for the existence of
these functions or provide local versions of them.
diff --git a/buildrun.cxx b/buildrun.cxx
index 8ee8c391f..a7fcd6297 100644
--- a/buildrun.cxx
+++ b/buildrun.cxx
@@ -510,9 +510,6 @@ compile_pass (systemtap_session& s)
output_autoconf(s, o, cs, "autoconf-kallsyms_6_4.c", "STAPCONF_KALLSYMS_6_4", NULL);
output_autoconf(s, o, cs, "autoconf-uidgid.c", "STAPCONF_LINUX_UIDGID_H", NULL);
output_exportconf(s, o2, "sigset_from_compat", "STAPCONF_SIGSET_FROM_COMPAT_EXPORTED");
- output_exportconf(s, o2, "vzalloc", "STAPCONF_VZALLOC");
- output_exportconf(s, o2, "vzalloc_node", "STAPCONF_VZALLOC_NODE");
- output_exportconf(s, o2, "vmalloc_node", "STAPCONF_VMALLOC_NODE");
// RHBZ1233912 - s390 temporary workaround for non-atomic udelay()
output_exportconf(s, o2, "udelay_simple", "STAPCONF_UDELAY_SIMPLE_EXPORTED");
diff --git a/runtime/linux/alloc.c b/runtime/linux/alloc.c
index ab16249e1..add36c30d 100644
--- a/runtime/linux/alloc.c
+++ b/runtime/linux/alloc.c
@@ -404,16 +404,6 @@ static void *_stp_kzalloc(size_t size)
return _stp_kzalloc_gfp(size, STP_ALLOC_FLAGS);
}
-#ifndef STAPCONF_VZALLOC
-static void *vzalloc(unsigned long size)
-{
- void *ret = vmalloc(size);
- if (ret)
- memset(ret, 0, size);
- return ret;
-}
-#endif
-
static void *_stp_vzalloc(size_t size)
{
void *ret;
@@ -438,24 +428,6 @@ static void *_stp_vzalloc(size_t size)
return ret;
}
-
-#ifndef STAPCONF_VMALLOC_NODE
-static void *vmalloc_node(unsigned long size, int node __attribute__((unused)))
-{
- return vmalloc(size);
-}
-#endif
-
-#ifndef STAPCONF_VZALLOC_NODE
-static void *vzalloc_node(unsigned long size, int node)
-{
- void *ret = vmalloc_node(size, node);
- if (ret)
- memset(ret, 0, size);
- return ret;
-}
-#endif
-
static void *_stp_vzalloc_node(size_t size, int node)
{
void *ret;

View File

@ -21,4 +21,8 @@ permissions:
# some stap scripts are wrapped within /bin/sh that confuses rpminspect
shellsyntax:
ignore:
- '*.stp'
- /usr/share/systemtap/examples/stapgames/2048.stp
- /usr/share/systemtap/testsuite/semko/autocast10.stp
- /usr/share/systemtap/testsuite/semok/autocast10.stp
- /usr/share/systemtap/testsuite/parseko/autocast02.stp
- /usr/share/systemtap/testsuite/systemtap.examples/stapgames/2048.stp

View File

@ -121,7 +121,7 @@ m stapdev stapdev
Name: systemtap
# PRERELEASE
Version: 5.1
Release: 3%{?release_override}%{?dist}
Release: 4%{?release_override}%{?dist}
# for version, see also configure.ac
@ -160,6 +160,7 @@ Source: ftp://sourceware.org/pub/systemtap/releases/systemtap-%{version}.tar.gz
Patch1: RHEL-36201a.patch
Patch2: RHEL-36201b.patch
Patch3: PR31495.patch
Patch4: RHEL-42605.patch
# Build*
BuildRequires: make
@ -589,6 +590,7 @@ or within a container.
%patch -P1 -p1
%patch -P2 -p1
%patch -P3 -p1
%patch -P4 -p1
%build
@ -1316,7 +1318,10 @@ exit 0
# PRERELEASE
%changelog
* Fri May 17 2024 Martin Cermak <mcermak@redhat.com> - 5.1-3
* Mon Jun 17 2024 Martin Cermak <mcermak@redhat.com> - 5.1-4
- RHEL-42605
* Thu May 16 2024 Martin Cermak <mcermak@redhat.com> - 5.1-3
- RHEL-29529
- RHEL-7318
- RHELMISC-3948