Compare commits
No commits in common. 'c9' and 'i10c-beta' have entirely different histories.
@ -0,0 +1,248 @@
|
||||
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;
|
||||
|
||||
commit 1fd6fb4d7101e013e21006da3b77b9723be5b446
|
||||
Author: William Cohen <wcohen@redhat.com>
|
||||
Date: Mon Jun 3 15:46:49 2024 -0400
|
||||
|
||||
Avoid -Werror=empty-body errors from runtime/linux/uprobes-inode.c
|
||||
|
||||
Newer linux kernel compiles are being built with -Werror=empty-body.
|
||||
For some modules generated runtime/linux/uprobes-inode.c is pulled in
|
||||
and will get error messages like the following:
|
||||
|
||||
In file included from /tmp/stapGIM4O9/stap_ded21c54fce18c6570a8930d823aca3a_10928_src.c:2439:
|
||||
/home/wcohen/systemtap_write/install/share/systemtap/runtime/linux/uprobes-inode.c: In function 'stapiu_change_semaphore_plus':
|
||||
/home/wcohen/systemtap_write/install/share/systemtap/runtime/linux/uprobes-inode.c:795:5: error: suggest braces around empty body in an 'else' statement [-Werror=empty-body]
|
||||
795 | ; // already unlocked
|
||||
| ^
|
||||
cc1: all warnings being treated as errors
|
||||
|
||||
Added "{}" in the appropriate location to indicate to the compiler
|
||||
that this is intentional.
|
||||
|
||||
diff --git a/runtime/linux/uprobes-inode.c b/runtime/linux/uprobes-inode.c
|
||||
index b07e7b666..103da09dd 100644
|
||||
--- a/runtime/linux/uprobes-inode.c
|
||||
+++ b/runtime/linux/uprobes-inode.c
|
||||
@@ -792,7 +792,7 @@ stapiu_change_semaphore_plus(struct stapiu_consumer* c, struct task_struct *task
|
||||
if (! any_found)
|
||||
spin_unlock_irqrestore(&c->process_list_lock, flags);
|
||||
else
|
||||
- ; // already unlocked
|
||||
+ {}; // already unlocked
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
||||
commit de8aba9a414b497d98c489173b878058c4031b39
|
||||
Author: William Cohen <wcohen@redhat.com>
|
||||
Date: Mon Jun 3 14:40:04 2024 -0400
|
||||
|
||||
Avoid -Werror=old-style-declaration for stap_probes array in generated kernel modules
|
||||
|
||||
With newer linux kernels additional compilers checks are being done
|
||||
and will get error messages like the following for the generated
|
||||
module:
|
||||
|
||||
/tmp/stapuundLy/stap_2755fca707746de04395c85872aae4b8_1753_src.c:111:1: error: 'static' is not at beginning of declaration [-Werror=old-style-declaration]
|
||||
111 | } static stap_probes[];
|
||||
| ^
|
||||
cc1: all warnings being treated as errors
|
||||
|
||||
Tweaked the code generation in translate.cxx to output the static
|
||||
stap_probes array in a form that is agreeable to newer kernel builds.
|
||||
|
||||
diff --git a/translate.cxx b/translate.cxx
|
||||
index 19c165a1d..8fb320e66 100644
|
||||
--- a/translate.cxx
|
||||
+++ b/translate.cxx
|
||||
@@ -8748,7 +8748,8 @@ translate_pass (systemtap_session& s)
|
||||
<< "STAP_PROBE_INIT_NAME(PN) "
|
||||
<< "STAP_PROBE_INIT_TIMING(L, D) "
|
||||
<< "}";
|
||||
- s.op->newline(-1) << "} static stap_probes[];";
|
||||
+ s.op->newline(-1) << "};";
|
||||
+ s.op->newline() << "static struct stap_probe stap_probes[];";
|
||||
s.op->assert_0_indent();
|
||||
#undef CALCIT
|
||||
|
||||
|
||||
commit da72d04303cfc3ba22b2bb58a26f8dc7868333eb
|
||||
Author: William Cohen <wcohen@redhat.com>
|
||||
Date: Mon Jun 3 14:23:08 2024 -0400
|
||||
|
||||
Avoid -Werror=empty-body errors from runtime/linux/debug.h macros
|
||||
|
||||
When attempting to run the testsuite the sanity.exp test fails
|
||||
due to the following -Werror=empty-body errors:
|
||||
|
||||
/home/wcohen/systemtap_write/install/share/systemtap/runtime/transport/relay_v2.c: In function '__stp_relay_wakeup_timer':
|
||||
/home/wcohen/systemtap_write/install/share/systemtap/runtime/linux/debug.h:47:36: error: suggest braces around empty body in an 'else' statement [-Werror=empty-body]
|
||||
47 | #define dbug_trans(level, args...) ;
|
||||
| ^
|
||||
/home/wcohen/systemtap_write/install/share/systemtap/runtime/transport/relay_v2.c:195:17: note: in expansion of macro 'dbug_trans'
|
||||
195 | dbug_trans(0, "relay_v2 wakeup timer expiry\n");
|
||||
| ^~~~~~~~~~
|
||||
/home/wcohen/systemtap_write/install/share/systemtap/runtime/transport/symbols.c: In function '_stp_set_stext':
|
||||
/home/wcohen/systemtap_write/install/share/systemtap/runtime/linux/debug.h:103:34: error: suggest braces around empty body in an 'else' statement [-Werror=empty-body]
|
||||
103 | #define dbug_sym(level, args...) ;
|
||||
| ^
|
||||
/home/wcohen/systemtap_write/install/share/systemtap/runtime/transport/symbols.c:44:17: note: in expansion of macro 'dbug_sym'
|
||||
44 | dbug_sym(1, "found kernel _stext load address: 0x%lx\n",
|
||||
| ^~~~~~~~
|
||||
|
||||
Changed the effectively empty macros in runtime/linux/debug.h to use
|
||||
"do { } while (0)" to eliminate these errors.
|
||||
|
||||
diff --git a/runtime/linux/debug.h b/runtime/linux/debug.h
|
||||
index d2ab9e8db..dfc834dbb 100644
|
||||
--- a/runtime/linux/debug.h
|
||||
+++ b/runtime/linux/debug.h
|
||||
@@ -44,8 +44,8 @@
|
||||
printk(args); \
|
||||
} while (0)
|
||||
#else
|
||||
-#define dbug_trans(level, args...) ;
|
||||
-#define dbug_trans2(args...) ;
|
||||
+#define dbug_trans(level, args...) do { } while (0)
|
||||
+#define dbug_trans2(args...) do { } while (0)
|
||||
#endif
|
||||
|
||||
#ifdef DEBUG_STP_ON_THE_FLY
|
||||
@@ -53,7 +53,7 @@
|
||||
_stp_dbug(__FUNCTION__, __LINE__, args); \
|
||||
} while (0)
|
||||
#else
|
||||
-#define dbug_otf(args...) ;
|
||||
+#define dbug_otf(args...) do { } while (0)
|
||||
#endif
|
||||
|
||||
#ifdef DEBUG_UPROBES
|
||||
@@ -61,7 +61,7 @@
|
||||
_stp_dbug(__FUNCTION__, __LINE__, args); \
|
||||
} while (0)
|
||||
#else
|
||||
-#define dbug_uprobes(args...) ;
|
||||
+#define dbug_uprobes(args...) do { } while (0)
|
||||
#endif
|
||||
|
||||
#ifdef DEBUG_UNWIND /* stack unwinder */
|
||||
@@ -70,7 +70,7 @@
|
||||
_stp_dbug(__FUNCTION__, __LINE__, args); \
|
||||
} while (0)
|
||||
#else
|
||||
-#define dbug_unwind(level, args...) ;
|
||||
+#define dbug_unwind(level, args...) do { } while (0)
|
||||
#endif
|
||||
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
_stp_dbug(__FUNCTION__, __LINE__, args); \
|
||||
} while (0)
|
||||
#else
|
||||
-#define dbug_task(level, args...) ;
|
||||
+#define dbug_task(level, args...) do { } while (0)
|
||||
#endif
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@
|
||||
_stp_dbug(__FUNCTION__, __LINE__, args); \
|
||||
} while (0)
|
||||
#else
|
||||
-#define dbug_task_vma(level, args...) ;
|
||||
+#define dbug_task_vma(level, args...) do { } while (0)
|
||||
#endif
|
||||
|
||||
|
||||
@@ -100,7 +100,7 @@
|
||||
_stp_dbug(__FUNCTION__, __LINE__, args); \
|
||||
} while (0)
|
||||
#else
|
||||
-#define dbug_sym(level, args...) ;
|
||||
+#define dbug_sym(level, args...) do { } while (0)
|
||||
#endif
|
||||
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
_stp_dbug(__FUNCTION__, __LINE__, args); \
|
||||
} while (0)
|
||||
#else
|
||||
-#define dbug_tp(level, args...) ;
|
||||
+#define dbug_tp(level, args...) do { } while (0)
|
||||
#endif
|
||||
|
||||
#endif /* _STP_LINUX_DEBUG_H_ */
|
@ -0,0 +1,70 @@
|
||||
diff --git a/python/Makefile.am b/python/Makefile.am
|
||||
index a254480f9..13618dc2f 100644
|
||||
--- a/python/Makefile.am
|
||||
+++ b/python/Makefile.am
|
||||
@@ -29,12 +29,12 @@ pkglibexecpython_DATA += stap-resolve-module-function.py
|
||||
|
||||
all-local:
|
||||
if HAVE_PYTHON2_PROBES
|
||||
- (cd $(srcdir); CFLAGS="$(AM_CPPFLAGS)" $(PYTHON) setup.py build \
|
||||
+ (cd $(srcdir); CFLAGS="$(CFLAGS) $(AM_CPPFLAGS)" $(PYTHON) setup.py build \
|
||||
--build-base $(shell readlink -f $(builddir))/py2build \
|
||||
--verbose)
|
||||
endif
|
||||
if HAVE_PYTHON3_PROBES
|
||||
- (cd $(srcdir); CFLAGS="$(AM_CPPFLAGS)" $(PYTHON3) setup.py build \
|
||||
+ (cd $(srcdir); CFLAGS="$(CFLAGS) $(AM_CPPFLAGS)" $(PYTHON3) setup.py build \
|
||||
--build-base $(shell readlink -f $(builddir))/py3build \
|
||||
--verbose)
|
||||
endif
|
||||
@@ -45,7 +45,7 @@ endif
|
||||
# and we need to keep separate build directories for python 2 and 3.
|
||||
install-exec-local:
|
||||
if HAVE_PYTHON2_PROBES
|
||||
- (cd $(srcdir); CFLAGS="$(AM_CPPFLAGS)" $(PYTHON) setup.py build \
|
||||
+ (cd $(srcdir); CFLAGS="$(CFLAGS) $(AM_CPPFLAGS)" $(PYTHON) setup.py build \
|
||||
--build-base $(shell readlink -f $(builddir))/py2build \
|
||||
install --prefix $(DESTDIR)$(prefix) \
|
||||
--single-version-externally-managed \
|
||||
@@ -53,7 +53,7 @@ if HAVE_PYTHON2_PROBES
|
||||
--verbose)
|
||||
endif
|
||||
if HAVE_PYTHON3_PROBES
|
||||
- (cd $(srcdir); CFLAGS="$(AM_CPPFLAGS)" $(PYTHON3) setup.py build \
|
||||
+ (cd $(srcdir); CFLAGS="$(CFLAGS) $(AM_CPPFLAGS)" $(PYTHON3) setup.py build \
|
||||
--build-base $(shell readlink -f $(builddir))/py3build \
|
||||
install --prefix $(DESTDIR)$(prefix) \
|
||||
--single-version-externally-managed \
|
||||
diff --git a/python/Makefile.in b/python/Makefile.in
|
||||
index 1216eefff..62fe2129c 100644
|
||||
--- a/python/Makefile.in
|
||||
+++ b/python/Makefile.in
|
||||
@@ -624,10 +624,10 @@ uninstall-am: uninstall-pkglibexecpythonDATA \
|
||||
|
||||
|
||||
@HAVE_PYTHON_PROBES_TRUE@all-local:
|
||||
-@HAVE_PYTHON2_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ (cd $(srcdir); CFLAGS="$(AM_CPPFLAGS)" $(PYTHON) setup.py build \
|
||||
+@HAVE_PYTHON2_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ (cd $(srcdir); CFLAGS="$(CFLAGS) $(AM_CPPFLAGS)" $(PYTHON) setup.py build \
|
||||
@HAVE_PYTHON2_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ --build-base $(shell readlink -f $(builddir))/py2build \
|
||||
@HAVE_PYTHON2_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ --verbose)
|
||||
-@HAVE_PYTHON3_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ (cd $(srcdir); CFLAGS="$(AM_CPPFLAGS)" $(PYTHON3) setup.py build \
|
||||
+@HAVE_PYTHON3_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ (cd $(srcdir); CFLAGS="$(CFLAGS) $(AM_CPPFLAGS)" $(PYTHON3) setup.py build \
|
||||
@HAVE_PYTHON3_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ --build-base $(shell readlink -f $(builddir))/py3build \
|
||||
@HAVE_PYTHON3_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ --verbose)
|
||||
|
||||
@@ -635,13 +635,13 @@ uninstall-am: uninstall-pkglibexecpythonDATA \
|
||||
# since only the build command has the '--build-base' directory option
|
||||
# and we need to keep separate build directories for python 2 and 3.
|
||||
@HAVE_PYTHON_PROBES_TRUE@install-exec-local:
|
||||
-@HAVE_PYTHON2_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ (cd $(srcdir); CFLAGS="$(AM_CPPFLAGS)" $(PYTHON) setup.py build \
|
||||
+@HAVE_PYTHON2_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ (cd $(srcdir); CFLAGS="$(CFLAGS) $(AM_CPPFLAGS)" $(PYTHON) setup.py build \
|
||||
@HAVE_PYTHON2_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ --build-base $(shell readlink -f $(builddir))/py2build \
|
||||
@HAVE_PYTHON2_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ install --prefix $(DESTDIR)$(prefix) \
|
||||
@HAVE_PYTHON2_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ --single-version-externally-managed \
|
||||
@HAVE_PYTHON2_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ --record $(shell readlink -f $(builddir))/py2build/install_files.txt \
|
||||
@HAVE_PYTHON2_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ --verbose)
|
||||
-@HAVE_PYTHON3_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ (cd $(srcdir); CFLAGS="$(AM_CPPFLAGS)" $(PYTHON3) setup.py build \
|
||||
+@HAVE_PYTHON3_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ (cd $(srcdir); CFLAGS="$(CFLAGS) $(AM_CPPFLAGS)" $(PYTHON3) setup.py build \
|
||||
@HAVE_PYTHON3_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ --build-base $(shell readlink -f $(builddir))/py3build \
|
||||
@HAVE_PYTHON3_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ install --prefix $(DESTDIR)$(prefix) \
|
||||
@HAVE_PYTHON3_PROBES_TRUE@@HAVE_PYTHON_PROBES_TRUE@ --single-version-externally-managed \
|
@ -0,0 +1,22 @@
|
||||
commit 470da664cc0afd4aac982806622dbb5d700a7904
|
||||
Author: Martin Cermak <mcermak@redhat.com>
|
||||
Date: Fri Aug 9 07:40:43 2024 +0200
|
||||
|
||||
RHEL-52491: NSS 3.101.0 compatibility
|
||||
|
||||
After NSS rebased to 3.101.0, systemtap stopped being able to grant
|
||||
trust to stap-server: https://issues.redhat.com/browse/RHEL-52491 .
|
||||
This patch fixes it.
|
||||
|
||||
diff --git a/client-nss.cxx b/client-nss.cxx
|
||||
index 55266feb7..c09f99ca9 100644
|
||||
--- a/client-nss.cxx
|
||||
+++ b/client-nss.cxx
|
||||
@@ -184,6 +184,7 @@ badCertHandler(void *arg, PRFileDesc *sslSocket)
|
||||
|
||||
break;
|
||||
|
||||
+ case SEC_ERROR_UNKNOWN_ISSUER:
|
||||
case SEC_ERROR_CA_CERT_INVALID:
|
||||
/* The server's certificate is not trusted. Should we trust it? */
|
||||
secStatus = SECFailure; /* Do not trust by default. */
|
Loading…
Reference in new issue