- Upgrade to version 5.4. See systemtap.changes for changelog
- Upgrade to version 5.4. See systemtap.changes for changelog
- Upgrade to version 5.4
Drop patch: rawhide-6.13-kbuild-compatibility.patch (upstream)
Drop patch: linux-6.13-fedora-compatibility.patch (upstream)
Add patch: elaborate.cxx-fix-32-bit-build.patch (resolve 32-bit build error)
Add patch: guard-usage-of-vmlinux.h.patch (temporary fix)
Drop explicit packaging of /var/cache/systemtap (jsc#PED-14770)
Summary of changes (v5.4):
- The kernel-context @cast operator now implicitly searches a kernel's
<vmlinux.h> generated header file first, if available (kernel 5.7+),
for type declarations. This can make some debuginfo access
unnecessary, and thus processing faster. It can work around kernel
API changes where type declarations move between headers.
Use --compatible=5.3 to disable this behaviour.
Use @cast(..., "kernel<vmlinux.h>") manually if desired.
- Type checking and autocast processing have been made more thorough,
so elided variables are checked more and @defined() tests may be
more complicated. Preexisting scripts that rely on elision for
bypassing type violations may now get caught. No --compatible
option exists to suppress this new behaviour.
- The sys/sdt.h file now arranges to include the section flag "R"
(RETAIN) for the .stapsdt.base elf sections related to sdt markers,
for compatibility with aggressive GC operations in some linkers.
- Kernel portability changes
- The dropwatch.stp [script] adds numeric drop-reason codes to the
statistics.
Summary of changes (v5.3):
- The first pass (-p1) now runs parse operations concurrently over of
the hundreds of tapset .stp files, potentially saving seconds of
time at startup.
- Numerous kernel portability changes
OBS-URL: https://build.opensuse.org/package/show/devel:tools/systemtap?expand=0&rev=156
29 lines
1.1 KiB
Diff
29 lines
1.1 KiB
Diff
From: Tony Jones <tonyj@suse.de>
|
|
Subject: guard usage of vmlinux.h
|
|
References: jsc#PED-15105
|
|
Upstream: pending
|
|
Signed-off-by: Tony Jones <tonyj@suse.de>
|
|
|
|
Temporary workaround until jsc#PED-15105 is resolved.
|
|
Check that .../build/vmlinux.h actually exists before using it.
|
|
|
|
diff --git a/buildrun.cxx b/buildrun.cxx
|
|
index c3e38a2db..4c9251653 100644
|
|
--- a/buildrun.cxx
|
|
+++ b/buildrun.cxx
|
|
@@ -1209,8 +1209,12 @@ make_typequery_kmod(systemtap_session& s, const vector<string>& headers, string&
|
|
const string& h = headers[i];
|
|
if (h == string("vmlinux.h")) // PR33428: vmlinux.h special case
|
|
{
|
|
- omf << " -include " << lex_cast_qstring(s.kernel_build_tree) << "/" << lex_cast_qstring("vmlinux.h");
|
|
- no_vmlinux_h = false;
|
|
+ string vh = s.kernel_build_tree + "/vmlinux.h";
|
|
+ if (access(vh.c_str(), R_OK) == 0)
|
|
+ {
|
|
+ omf << " -include " << lex_cast_qstring(s.kernel_build_tree) << "/" << lex_cast_qstring("vmlinux.h");
|
|
+ no_vmlinux_h = false;
|
|
+ }
|
|
}
|
|
else
|
|
omf << " -include " << lex_cast_qstring(h); // XXX right quoting?
|