Compare commits
4 Commits
imports/c8
...
c8
Author | SHA1 | Date |
---|---|---|
eabdullin | 2b832edeae | |
CentOS Sources | c7ff69c7ad | |
CentOS Sources | 3d77a87b64 | |
CentOS Sources | 4a3d447181 |
|
@ -1 +1 @@
|
|||
SOURCES/systemtap-4.5.tar.gz
|
||||
SOURCES/systemtap-4.9.tar.gz
|
||||
|
|
|
@ -1 +1 @@
|
|||
c549d5fa7aaf6a8cef3371f5757d912d41eae934 SOURCES/systemtap-4.5.tar.gz
|
||||
7ba2ad579a5ba66ccfd36ad6df0896c9e136f9e9 SOURCES/systemtap-4.9.tar.gz
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,99 @@
|
|||
commit 9839db5514a29cf4f58b3de8cc6155088be6d061
|
||||
gpg: Signature made Sat 12 Aug 2023 02:49:26 PM EDT
|
||||
gpg: using RSA key 5D38116FA4D3A7CC77E378D37E83610126DCC2E8
|
||||
gpg: Good signature from "Frank Ch. Eigler <fche@elastic.org>" [full]
|
||||
Author: Frank Ch. Eigler <fche@redhat.com>
|
||||
Date: Sat Aug 12 14:28:44 2023 -0400
|
||||
|
||||
PR30749: correct stap --sign-module timing
|
||||
|
||||
Previous code signed the temp directory copy, after it had already
|
||||
been copied into the cache -- so the signature never made it to a
|
||||
permanent artifact.
|
||||
|
||||
If the module was being fetched from the cache from a previous build
|
||||
run, a sign (re)attempt will still be done. This may not be
|
||||
necessary, but shouldn't be harmful.
|
||||
|
||||
Reported-By: Renaud Métrich <rmetrich@redhat.com>
|
||||
|
||||
diff --git a/main.cxx b/main.cxx
|
||||
index 06adb66ad..9f695cbd8 100644
|
||||
--- a/main.cxx
|
||||
+++ b/main.cxx
|
||||
@@ -1190,8 +1190,10 @@ passes_0_4 (systemtap_session &s)
|
||||
s.mok_fingerprints.clear();
|
||||
s.mok_fingerprints.push_back(mok_fingerprint);
|
||||
}
|
||||
- rc =
|
||||
- sign_module (s.tmpdir, s.module_filename(), s.mok_fingerprints, mok_path, s.kernel_build_tree);
|
||||
+ if (s.verbose)
|
||||
+ clog << _F("Signing %s with mok key %s", s.module_filename().c_str(), mok_path.c_str())
|
||||
+ << endl;
|
||||
+ rc = sign_module (s.tmpdir, s.module_filename(), s.mok_fingerprints, mok_path, s.kernel_build_tree);
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -1310,8 +1312,30 @@ passes_0_4 (systemtap_session &s)
|
||||
if (! s.use_script_cache && s.last_pass <= 4)
|
||||
s.save_module = true;
|
||||
|
||||
+#if HAVE_NSS
|
||||
+ // PR30749
|
||||
+ if (!rc && s.module_sign_given)
|
||||
+ {
|
||||
+ // when run on client as --sign-module, mok fingerprints are result of mokutil -l
|
||||
+ // when run from server as --sign-module=PATH, mok fingerprint is given by PATH
|
||||
+ string mok_path;
|
||||
+ if (!s.module_sign_mok_path.empty())
|
||||
+ {
|
||||
+ string mok_fingerprint;
|
||||
+ split_path (s.module_sign_mok_path, mok_path, mok_fingerprint);
|
||||
+ s.mok_fingerprints.clear();
|
||||
+ s.mok_fingerprints.push_back(mok_fingerprint);
|
||||
+ }
|
||||
+
|
||||
+ if (s.verbose)
|
||||
+ clog << _F("Signing %s with mok key %s", s.module_filename().c_str(), mok_path.c_str())
|
||||
+ << endl;
|
||||
+ rc = sign_module (s.tmpdir, s.module_filename(), s.mok_fingerprints, mok_path, s.kernel_build_tree);
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
// Copy module to the current directory.
|
||||
- if (s.save_module && !pending_interrupts)
|
||||
+ if (!rc && s.save_module && !pending_interrupts)
|
||||
{
|
||||
string module_src_path = s.tmpdir + "/" + s.module_filename();
|
||||
string module_dest_path = s.module_filename();
|
||||
@@ -1327,29 +1351,11 @@ passes_0_4 (systemtap_session &s)
|
||||
}
|
||||
}
|
||||
|
||||
-#if HAVE_NSS
|
||||
- if (s.module_sign_given)
|
||||
- {
|
||||
- // when run on client as --sign-module, mok fingerprints are result of mokutil -l
|
||||
- // when run from server as --sign-module=PATH, mok fingerprint is given by PATH
|
||||
- string mok_path;
|
||||
- if (!s.module_sign_mok_path.empty())
|
||||
- {
|
||||
- string mok_fingerprint;
|
||||
- split_path (s.module_sign_mok_path, mok_path, mok_fingerprint);
|
||||
- s.mok_fingerprints.clear();
|
||||
- s.mok_fingerprints.push_back(mok_fingerprint);
|
||||
- }
|
||||
-
|
||||
- rc = sign_module (s.tmpdir, s.module_filename(), s.mok_fingerprints, mok_path, s.kernel_build_tree);
|
||||
- }
|
||||
-#endif
|
||||
-
|
||||
PROBE1(stap, pass4__end, &s);
|
||||
|
||||
return rc;
|
||||
}
|
||||
-
|
||||
+
|
||||
int
|
||||
pass_5 (systemtap_session &s, vector<remote*> targets)
|
||||
{
|
|
@ -1,29 +0,0 @@
|
|||
commit 515a6a2d63cdf16c5bc599f0d29283289219d9a4
|
||||
Author: Frank Ch. Eigler <fche@redhat.com>
|
||||
Date: Thu Jun 24 13:30:38 2021 -0400
|
||||
|
||||
rhbz1972828: tapsets: iommu tracepoints
|
||||
|
||||
Disable detection of intel-iommu tracepoint family on non-x86
|
||||
platforms, because the 5.13ish kernel headers for this tracepoint
|
||||
include references to functions like clcache_flush_range which don't
|
||||
exist on all non-x86.
|
||||
|
||||
diff --git a/tapsets.cxx b/tapsets.cxx
|
||||
index a5e41129f..20e0cb68f 100644
|
||||
--- a/tapsets.cxx
|
||||
+++ b/tapsets.cxx
|
||||
@@ -11930,6 +11930,13 @@ static vector<string> tracepoint_extra_decls (systemtap_session& s,
|
||||
they_live.push_back ("#include <linux/phy.h>");
|
||||
}
|
||||
|
||||
+ if (header.find("intel_iommu") != string::npos && s.architecture != "x86_64" && s.architecture != "i386")
|
||||
+ {
|
||||
+ // need asm/cacheflush.h for clflush_cache_range() used in that header,
|
||||
+ // but this function does not exist on e.g. ppc
|
||||
+ they_live.push_back ("#error nope");
|
||||
+ }
|
||||
+
|
||||
if (header.find("wbt") != string::npos)
|
||||
{
|
||||
// blk-wbt.h gets included as "../../../block/blk-wbt.h", so we
|
|
@ -0,0 +1,24 @@
|
|||
commit ead30c04c7157fec194c0f6d81e5c51c99bf25cf
|
||||
gpg: Signature made Wed 24 May 2023 10:23:54 AM EDT
|
||||
gpg: using RSA key 5D38116FA4D3A7CC77E378D37E83610126DCC2E8
|
||||
gpg: Good signature from "Frank Ch. Eigler <fche@elastic.org>" [full]
|
||||
Author: Frank Ch. Eigler <fche@redhat.com>
|
||||
Date: Wed May 24 10:22:08 2023 -0400
|
||||
|
||||
PR30484: stap-report: scrape less of /sys /proc
|
||||
|
||||
Mainly: avoid process/busy parts like /proc/$pid.
|
||||
|
||||
diff --git a/stap-report b/stap-report
|
||||
index 217ddf840..3b3a1a258 100755
|
||||
--- a/stap-report
|
||||
+++ b/stap-report
|
||||
@@ -105,7 +105,7 @@ elif [ -f /var/log/packages ]; then
|
||||
run "cat /var/log/packages | egrep 'systemtap|elfutils|kernel|gcc|dyninst|java|byteman|avahi|nss|nspr|dejagnu' | sort -k9"
|
||||
fi
|
||||
run "egrep 'PROBE|RANDOMIZE|RELOC|TRACE|MARKER|KALLSYM|_DEBUG_|LOCKDEP|LOCKING|MODULE|FENTRY|_SIG|BPF' /lib/modules/`uname -r`/build/.config | grep -v not.set | sort | fmt -w 80"
|
||||
-run "find /debugfs /proc /sys /dev /sys/kernel/debug -type f -path '*kprobe*' -o -path '*yama*' 2>/dev/null | xargs grep -H ."
|
||||
+run "find /debugfs /proc/sys /sys/kernel /dev -type f -path '*kprobe*' -o -path '*yama*' 2>/dev/null | xargs grep -H ."
|
||||
run "lsmod"
|
||||
run "avahi-browse -r -t _stap._tcp"
|
||||
run "ifconfig -a"
|
|
@ -0,0 +1,64 @@
|
|||
commit ab0c5c25509600b7c9cecc9e10baebc984082b50
|
||||
gpg: Signature made Fri 12 May 2023 11:18:18 AM EDT
|
||||
gpg: using RSA key 5D38116FA4D3A7CC77E378D37E83610126DCC2E8
|
||||
gpg: Good signature from "Frank Ch. Eigler <fche@elastic.org>" [full]
|
||||
Author: Frank Ch. Eigler <fche@redhat.com>
|
||||
Date: Fri May 12 11:13:45 2023 -0400
|
||||
|
||||
PR30442: failing optional statement probes should not trigger pass2 exceptions
|
||||
|
||||
In tapsets.cxx, query_cu() and query_module() aggressively caught &
|
||||
sess-print_error'd semantic_errors from subsidiary call sites. They
|
||||
are unaware of whether the probe in question is being resolved within
|
||||
an optional (? or !) context. Instead of this, they now simply let
|
||||
the exceptions propagate out to derive_probes() or similar, which does
|
||||
know whether exceptions are errors in that context. That means
|
||||
exceptions can propagate through elfutils iteration machinery too,
|
||||
perhaps risking C level memory leaks, but so be it.
|
||||
|
||||
This fix goes well beyond statement probes per se, but hand-testing
|
||||
and the testsuite appear not to show regressions related to this.
|
||||
|
||||
Added semok/badstmt.exp to test.
|
||||
|
||||
diff --git a/tapsets.cxx b/tapsets.cxx
|
||||
index 859160bc5..7b7107371 100644
|
||||
--- a/tapsets.cxx
|
||||
+++ b/tapsets.cxx
|
||||
@@ -2453,8 +2453,9 @@ query_cu (Dwarf_Die * cudie, dwarf_query * q)
|
||||
}
|
||||
catch (const semantic_error& e)
|
||||
{
|
||||
- q->sess.print_error (e);
|
||||
- return DWARF_CB_ABORT;
|
||||
+ // q->sess.print_error (e);
|
||||
+ throw;
|
||||
+ // return DWARF_CB_ABORT;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2696,8 +2697,9 @@ query_module (Dwfl_Module *mod,
|
||||
}
|
||||
catch (const semantic_error& e)
|
||||
{
|
||||
- q->sess.print_error (e);
|
||||
- return DWARF_CB_ABORT;
|
||||
+ // q->sess.print_error (e);
|
||||
+ // return DWARF_CB_ABORT;
|
||||
+ throw;
|
||||
}
|
||||
}
|
||||
|
||||
diff --git a/testsuite/semok/stmtbad.stp b/testsuite/semok/stmtbad.stp
|
||||
new file mode 100755
|
||||
index 000000000..06780790a
|
||||
--- /dev/null
|
||||
+++ b/testsuite/semok/stmtbad.stp
|
||||
@@ -0,0 +1,7 @@
|
||||
+#! /bin/sh
|
||||
+
|
||||
+exec stap -v -p2 -e 'probe oneshot {log("nothing") }
|
||||
+ probe process.statement("main@*:1")? { log("yo") }' -c stap
|
||||
+
|
||||
+# The optional misaddressed statement probe should let stap still
|
||||
+# succeed with the oneshot probe.
|
|
@ -4,14 +4,13 @@
|
|||
%{!?with_htmldocs: %global with_htmldocs 0}
|
||||
%{!?with_monitor: %global with_monitor 1}
|
||||
# crash is not available
|
||||
%ifarch ppc ppc64 %{sparc} %{mips}
|
||||
%ifarch ppc ppc64 %{sparc} %{mips} %{riscv}
|
||||
%{!?with_crash: %global with_crash 0}
|
||||
%else
|
||||
%{!?with_crash: %global with_crash 1}
|
||||
%endif
|
||||
%{!?with_rpm: %global with_rpm 1}
|
||||
%{!?elfutils_version: %global elfutils_version 0.179}
|
||||
%{!?pie_supported: %global pie_supported 1}
|
||||
%{!?with_boost: %global with_boost 0}
|
||||
%ifarch %{ix86} x86_64 ppc ppc64 ppc64le aarch64
|
||||
%{!?with_dyninst: %global with_dyninst 0%{?fedora} >= 18 || 0%{?rhel} >= 7}
|
||||
|
@ -21,7 +20,11 @@
|
|||
%{!?with_bpf: %global with_bpf 0%{?fedora} >= 22 || 0%{?rhel} >= 8}
|
||||
%{!?with_systemd: %global with_systemd 0%{?fedora} >= 19 || 0%{?rhel} >= 7}
|
||||
%{!?with_emacsvim: %global with_emacsvim 0%{?fedora} >= 19 || 0%{?rhel} >= 7}
|
||||
%ifarch %{ix86}
|
||||
%{!?with_java: %global with_java 0}
|
||||
%else
|
||||
%{!?with_java: %global with_java 0%{?fedora} >= 19 || 0%{?rhel} >= 7}
|
||||
%endif
|
||||
%{!?with_debuginfod: %global with_debuginfod 0%{?fedora} >= 25 || 0%{?rhel} >= 7}
|
||||
%{!?with_virthost: %global with_virthost 0%{?fedora} >= 19 || 0%{?rhel} >= 7}
|
||||
%{!?with_virtguest: %global with_virtguest 1}
|
||||
|
@ -39,6 +42,7 @@
|
|||
%{!?with_python3_probes: %global with_python3_probes (0%{?fedora} >= 23 || 0%{?rhel} > 7)}
|
||||
%{!?with_httpd: %global with_httpd 0}
|
||||
%{!?with_specific_python: %global with_specific_python 0%{?fedora} >= 31}
|
||||
%{!?with_sysusers: %global with_sysusers 0%{?fedora} >= 32 || 0%{?rhel} >= 9}
|
||||
|
||||
# Virt is supported on these arches, even on el7, but it's not in core EL7
|
||||
%if 0%{?rhel} <= 7
|
||||
|
@ -88,8 +92,37 @@
|
|||
# To avoid testsuite/*/*.stp has shebang which doesn't start with '/'
|
||||
%define __brp_mangle_shebangs_exclude_from .stp$
|
||||
|
||||
%define _systemtap_runtime_preinstall \
|
||||
# See systemd-sysusers(8) sysusers.d(5)\
|
||||
\
|
||||
g stapusr 156\
|
||||
g stapsys 157\
|
||||
g stapdev 158
|
||||
|
||||
%define _systemtap_server_preinstall \
|
||||
# See systemd-sysusers(8) sysusers.d(5)\
|
||||
\
|
||||
g stap-server -\
|
||||
u stap-server - "systemtap compiler server" /var/lib/stap-server /sbin/nologin\
|
||||
m stap-server stap-server
|
||||
|
||||
|
||||
%define _systemtap_testsuite_preinstall \
|
||||
# See systemd-sysusers(8) sysusers.d(5)\
|
||||
\
|
||||
u stapusr - "systemtap testsuite user" / /sbin/nologin\
|
||||
u stapsys - "systemtap testsuite user" / /sbin/nologin\
|
||||
u stapdev - "systemtap testsuite user" / /sbin/nologin\
|
||||
m stapusr stapusr\
|
||||
m stapsys stapusr\
|
||||
m stapsys stapsys\
|
||||
m stapdev stapusr\
|
||||
m stapdev stapdev
|
||||
|
||||
|
||||
Name: systemtap
|
||||
Version: 4.5
|
||||
# PRERELEASE
|
||||
Version: 4.9
|
||||
Release: 3%{?release_override}%{?dist}
|
||||
# for version, see also configure.ac
|
||||
|
||||
|
@ -109,6 +142,7 @@ Release: 3%{?release_override}%{?dist}
|
|||
# systemtap-runtime-virtguest udev rules, init scripts/systemd service, req:-runtime
|
||||
# systemtap-runtime-python2 HelperSDT python2 module, req:-runtime
|
||||
# systemtap-runtime-python3 HelperSDT python3 module, req:-runtime
|
||||
# systemtap-jupyter /usr/bin/stap-jupyter-* interactive-notebook req:systemtap
|
||||
#
|
||||
# Typical scenarios:
|
||||
#
|
||||
|
@ -126,7 +160,11 @@ License: GPLv2+
|
|||
URL: http://sourceware.org/systemtap/
|
||||
Source: ftp://sourceware.org/pub/systemtap/releases/systemtap-%{version}.tar.gz
|
||||
|
||||
Patch1: rhbz1991631.patch
|
||||
Patch1: rhbz2223733.patch
|
||||
Patch2: rhbz2223735.patch
|
||||
Patch3: pr29108.patch
|
||||
Patch4: pr30749.patch
|
||||
|
||||
|
||||
# Build*
|
||||
BuildRequires: make
|
||||
|
@ -139,7 +177,7 @@ BuildRequires: pkgconfig(avahi-client)
|
|||
BuildRequires: pkgconfig(libdebuginfod)
|
||||
%endif
|
||||
%if %{with_dyninst}
|
||||
BuildRequires: dyninst-devel >= 11.0
|
||||
BuildRequires: dyninst-devel >= 10.0
|
||||
BuildRequires: pkgconfig(libselinux)
|
||||
%endif
|
||||
%if %{with_sqlite}
|
||||
|
@ -176,6 +214,7 @@ BuildRequires: xmlto /usr/share/xmlto/format/fo/pdf
|
|||
%endif
|
||||
%endif
|
||||
%if %{with_emacsvim}
|
||||
# for _emacs_sitelispdir macros etc.
|
||||
BuildRequires: emacs
|
||||
%endif
|
||||
%if %{with_java}
|
||||
|
@ -198,18 +237,22 @@ BuildRequires: python2-setuptools
|
|||
BuildRequires: python-setuptools
|
||||
%endif
|
||||
%endif
|
||||
%if %{with_python3}
|
||||
BuildRequires: python3
|
||||
%endif
|
||||
%if %{with_python3_probes}
|
||||
BuildRequires: python3-devel
|
||||
BuildRequires: python3-setuptools
|
||||
%endif
|
||||
%if %{with_specific_python}
|
||||
BuildRequires: /usr/bin/pathfix.py
|
||||
%endif
|
||||
|
||||
%if %{with_httpd}
|
||||
BuildRequires: libmicrohttpd-devel
|
||||
BuildRequires: libuuid-devel
|
||||
%endif
|
||||
%if %{with_sysusers}
|
||||
BuildRequires: systemd-rpm-macros
|
||||
%endif
|
||||
|
||||
|
||||
# Install requirements
|
||||
Requires: systemtap-client = %{version}-%{release}
|
||||
|
@ -486,7 +529,7 @@ This package includes support files needed to run systemtap scripts
|
|||
that probe python 3 processes.
|
||||
%endif
|
||||
|
||||
%if %{with_python3}
|
||||
%if %{with_python3_probes}
|
||||
%package exporter
|
||||
Summary: Systemtap-prometheus interoperation mechanism
|
||||
License: GPLv2+
|
||||
|
@ -504,7 +547,8 @@ to remote requesters on demand.
|
|||
Summary: Systemtap Cross-VM Instrumentation - host
|
||||
License: GPLv2+
|
||||
URL: http://sourceware.org/systemtap/
|
||||
Requires: libvirt >= 1.0.2
|
||||
# only require libvirt-libs really
|
||||
#Requires: libvirt >= 1.0.2
|
||||
Requires: libxml2
|
||||
|
||||
%description runtime-virthost
|
||||
|
@ -534,11 +578,26 @@ This package installs the services necessary on a virtual machine for a
|
|||
systemtap-runtime-virthost machine to execute systemtap scripts.
|
||||
%endif
|
||||
|
||||
%if %{with_python3} && %{with_monitor}
|
||||
%package jupyter
|
||||
Summary: ISystemtap jupyter kernel and examples
|
||||
License: GPLv2+
|
||||
URL: http://sourceware.org/systemtap/
|
||||
Requires: systemtap = %{version}-%{release}
|
||||
|
||||
%description jupyter
|
||||
This package includes files needed to build and run
|
||||
the interactive systemtap Jupyter kernel, either locally
|
||||
or within a container.
|
||||
%endif
|
||||
# ------------------------------------------------------------------------
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch1 -p1
|
||||
%patch -P1 -p1
|
||||
%patch -P2 -p1
|
||||
%patch -P3 -p1
|
||||
%patch -P4 -p1
|
||||
|
||||
%build
|
||||
|
||||
|
@ -587,14 +646,6 @@ systemtap-runtime-virthost machine to execute systemtap scripts.
|
|||
%global docs_config --enable-docs=prebuilt
|
||||
%endif
|
||||
|
||||
# Enable pie as configure defaults to disabling it
|
||||
%if %{pie_supported}
|
||||
%global pie_config --enable-pie
|
||||
%else
|
||||
%global pie_config --disable-pie
|
||||
%endif
|
||||
|
||||
|
||||
%if %{with_java}
|
||||
%global java_config --with-java=%{_jvmdir}/java
|
||||
%else
|
||||
|
@ -644,12 +695,17 @@ systemtap-runtime-virthost machine to execute systemtap scripts.
|
|||
# We don't ship compileworthy python code, just oddball samples
|
||||
%global py_auto_byte_compile 0
|
||||
|
||||
%configure %{dyninst_config} %{sqlite_config} %{crash_config} %{docs_config} %{pie_config} %{rpm_config} %{java_config} %{virt_config} %{dracut_config} %{python3_config} %{python2_probes_config} %{python3_probes_config} %{httpd_config} %{bpf_config} %{debuginfod_config} --disable-silent-rules --with-extra-version="rpm %{version}-%{release}"
|
||||
make %{?_smp_mflags}
|
||||
%configure %{dyninst_config} %{sqlite_config} %{crash_config} %{docs_config} %{rpm_config} %{java_config} %{virt_config} %{dracut_config} %{python3_config} %{python2_probes_config} %{python3_probes_config} %{httpd_config} %{bpf_config} %{debuginfod_config} --disable-silent-rules --with-extra-version="rpm %{version}-%{release}"
|
||||
make %{?_smp_mflags} V=1
|
||||
|
||||
|
||||
%install
|
||||
make DESTDIR=$RPM_BUILD_ROOT install
|
||||
|
||||
%if ! (%{with_python3})
|
||||
rm -v $RPM_BUILD_ROOT%{_bindir}/stap-profile-annotate
|
||||
%endif
|
||||
|
||||
%find_lang %{name}
|
||||
for dir in $(ls -1d $RPM_BUILD_ROOT%{_mandir}/{??,??_??}) ; do
|
||||
dir=$(echo $dir | sed -e "s|^$RPM_BUILD_ROOT||")
|
||||
|
@ -657,6 +713,14 @@ for dir in $(ls -1d $RPM_BUILD_ROOT%{_mandir}/{??,??_??}) ; do
|
|||
echo "%%lang($lang) $dir/man*/*" >> %{name}.lang
|
||||
done
|
||||
|
||||
%if %{with_sysusers}
|
||||
mkdir -p %{buildroot}%{_sysusersdir}
|
||||
echo '%_systemtap_runtime_preinstall' > %{buildroot}%{_sysusersdir}/systemtap-runtime.conf
|
||||
echo '%_systemtap_server_preinstall' > %{buildroot}%{_sysusersdir}/systemtap-server.conf
|
||||
echo '%_systemtap_testsuite_preinstall' > %{buildroot}%{_sysusersdir}/systemtap-testsuite.conf
|
||||
%endif
|
||||
|
||||
|
||||
ln -s %{_datadir}/systemtap/examples
|
||||
|
||||
# Fix paths in the example scripts.
|
||||
|
@ -706,6 +770,9 @@ install -m 644 initscript/logrotate.stap-server $RPM_BUILD_ROOT%{_sysconfdir}/lo
|
|||
%if %{with_systemd}
|
||||
mkdir -p $RPM_BUILD_ROOT%{_unitdir}
|
||||
touch $RPM_BUILD_ROOT%{_unitdir}/systemtap.service
|
||||
# RHBZ2070857
|
||||
mkdir -p $RPM_BUILD_ROOT%{_presetdir}
|
||||
echo 'enable systemtap.service' > $RPM_BUILD_ROOT%{_presetdir}/42-systemtap.preset
|
||||
install -m 644 initscript/systemtap.service $RPM_BUILD_ROOT%{_unitdir}/systemtap.service
|
||||
mkdir -p $RPM_BUILD_ROOT%{_sbindir}
|
||||
install -m 755 initscript/systemtap $RPM_BUILD_ROOT%{_sbindir}/systemtap-service
|
||||
|
@ -776,28 +843,41 @@ done
|
|||
|
||||
%if %{with_specific_python}
|
||||
# Some files got ambiguous python shebangs, we fix them after everything else is done
|
||||
pathfix.py -pni "%{__python3} %{py3_shbang_opts}" %{buildroot}%{python3_sitearch} %{buildroot}%{_bindir}/*
|
||||
%py3_shebang_fix %{buildroot}%{python3_sitearch} %{buildroot}%{_bindir}/*
|
||||
%endif
|
||||
|
||||
%pre runtime
|
||||
%if %{with_sysusers}
|
||||
echo '%_systemtap_runtime_preinstall' | systemd-sysusers --replace=%{_sysusersdir}/systemtap-runtime.conf -
|
||||
%else
|
||||
getent group stapusr >/dev/null || groupadd -f -g 156 -r stapusr
|
||||
getent group stapsys >/dev/null || groupadd -f -g 157 -r stapsys
|
||||
getent group stapdev >/dev/null || groupadd -f -g 158 -r stapdev
|
||||
%endif
|
||||
exit 0
|
||||
|
||||
%pre server
|
||||
%if %{with_sysusers}
|
||||
echo '%_systemtap_server_preinstall' | systemd-sysusers --replace=%{_sysusersdir}/systemtap-server.conf -
|
||||
%else
|
||||
getent group stap-server >/dev/null || groupadd -f -g 155 -r stap-server
|
||||
getent passwd stap-server >/dev/null || \
|
||||
useradd -c "Systemtap Compile Server" -u 155 -g stap-server -d %{_localstatedir}/lib/stap-server -r -s /sbin/nologin stap-server 2>/dev/null || \
|
||||
useradd -c "Systemtap Compile Server" -g stap-server -d %{_localstatedir}/lib/stap-server -r -s /sbin/nologin stap-server
|
||||
%endif
|
||||
exit 0
|
||||
|
||||
%pre testsuite
|
||||
%if %{with_sysusers}
|
||||
echo '%_systemtap_testsuite_preinstall' | systemd-sysusers --replace=%{_sysusersdir}/systemtap-testsuite.conf -
|
||||
%else
|
||||
getent passwd stapusr >/dev/null || \
|
||||
useradd -c "Systemtap 'stapusr' User" -g stapusr -r -s /sbin/nologin stapusr
|
||||
getent passwd stapsys >/dev/null || \
|
||||
useradd -c "Systemtap 'stapsys' User" -g stapsys -G stapusr -r -s /sbin/nologin stapsys
|
||||
getent passwd stapdev >/dev/null || \
|
||||
useradd -c "Systemtap 'stapdev' User" -g stapdev -G stapusr -r -s /sbin/nologin stapdev
|
||||
%endif
|
||||
exit 0
|
||||
|
||||
%post server
|
||||
|
@ -818,7 +898,8 @@ if [ ! -f ~stap-server/.systemtap/rc ]; then
|
|||
numcpu=`/usr/bin/getconf _NPROCESSORS_ONLN`
|
||||
if [ -z "$numcpu" -o "$numcpu" -lt 1 ]; then numcpu=1; fi
|
||||
nproc=`expr $numcpu \* 30`
|
||||
echo "--rlimit-as=614400000 --rlimit-cpu=60 --rlimit-nproc=$nproc --rlimit-stack=1024000 --rlimit-fsize=51200000" > ~stap-server/.systemtap/rc
|
||||
# PR29661 -> 4G
|
||||
echo "--rlimit-as=4294967296 --rlimit-cpu=60 --rlimit-nproc=$nproc --rlimit-stack=1024000 --rlimit-fsize=51200000" > ~stap-server/.systemtap/rc
|
||||
chown stap-server:stap-server ~stap-server/.systemtap/rc
|
||||
fi
|
||||
|
||||
|
@ -874,7 +955,8 @@ exit 0
|
|||
|
||||
%post initscript
|
||||
%if %{with_systemd}
|
||||
/bin/systemctl enable systemtap.service >/dev/null 2>&1 || :
|
||||
# RHBZ2070857 - use systemd presets instead
|
||||
# /bin/systemctl enable systemtap.service >/dev/null 2>&1 || :
|
||||
%else
|
||||
/sbin/chkconfig --add systemtap
|
||||
%endif
|
||||
|
@ -954,7 +1036,7 @@ if [ "$1" -ge "1" ]; then
|
|||
fi
|
||||
exit 0
|
||||
|
||||
%if %{with_python3}
|
||||
%if %{with_python3_probes}
|
||||
%if %{with_systemd}
|
||||
%preun exporter
|
||||
if [ $1 = 0 ] ; then
|
||||
|
@ -1019,11 +1101,17 @@ exit 0
|
|||
%doc README README.unprivileged AUTHORS NEWS
|
||||
%{!?_licensedir:%global license %%doc}
|
||||
%license COPYING
|
||||
%if %{with_sysusers}
|
||||
%{_sysusersdir}/systemtap-server.conf
|
||||
%endif
|
||||
|
||||
|
||||
%files devel -f systemtap.lang
|
||||
%{_bindir}/stap
|
||||
%{_bindir}/stap-prep
|
||||
%if %{with_python3}
|
||||
%{_bindir}/stap-profile-annotate
|
||||
%endif
|
||||
%{_bindir}/stap-report
|
||||
%dir %{_datadir}/systemtap
|
||||
%{_datadir}/systemtap/runtime
|
||||
|
@ -1088,6 +1176,9 @@ exit 0
|
|||
%doc README README.security AUTHORS NEWS
|
||||
%{!?_licensedir:%global license %%doc}
|
||||
%license COPYING
|
||||
%if %{with_sysusers}
|
||||
%{_sysusersdir}/systemtap-runtime.conf
|
||||
%endif
|
||||
|
||||
|
||||
%files client -f systemtap.lang
|
||||
|
@ -1121,6 +1212,7 @@ exit 0
|
|||
|
||||
%files initscript
|
||||
%if %{with_systemd}
|
||||
%{_presetdir}/42-systemtap.preset
|
||||
%{_unitdir}/systemtap.service
|
||||
%{_sbindir}/systemtap-service
|
||||
%else
|
||||
|
@ -1154,6 +1246,9 @@ exit 0
|
|||
%files testsuite
|
||||
%dir %{_datadir}/systemtap
|
||||
%{_datadir}/systemtap/testsuite
|
||||
%if %{with_sysusers}
|
||||
%{_sysusersdir}/systemtap-testsuite.conf
|
||||
%endif
|
||||
|
||||
|
||||
%if %{with_java}
|
||||
|
@ -1195,7 +1290,7 @@ exit 0
|
|||
%endif
|
||||
%endif
|
||||
|
||||
%if %{with_python3}
|
||||
%if %{with_python3_probes}
|
||||
%files exporter
|
||||
%{_sysconfdir}/stap-exporter
|
||||
%{_sysconfdir}/sysconfig/stap-exporter
|
||||
|
@ -1204,6 +1299,15 @@ exit 0
|
|||
%{_sbindir}/stap-exporter
|
||||
%endif
|
||||
|
||||
%if %{with_python3} && %{with_monitor}
|
||||
%files jupyter
|
||||
%{_bindir}/stap-jupyter-container
|
||||
%{_bindir}/stap-jupyter-install
|
||||
%{_mandir}/man1/stap-jupyter.1*
|
||||
%dir %{_datadir}/systemtap
|
||||
%{_datadir}/systemtap/interactive-notebook
|
||||
%endif
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
|
||||
# Future new-release entries should be of the form
|
||||
|
@ -1213,6 +1317,44 @@ exit 0
|
|||
|
||||
# PRERELEASE
|
||||
%changelog
|
||||
* Mon Aug 14 2023 Frank Ch. Eigler <fche@redhat.com> - 4.9-3
|
||||
- rhbz2231619
|
||||
- rhbz2095359
|
||||
|
||||
* Tue Jul 18 2023 Frank Ch. Eigler <fche@redhat.com> - 4.9-2
|
||||
- rhbz2223733 = rhbz2211288
|
||||
- rhbz2223735 = rhbz2223739
|
||||
|
||||
* Fri Apr 28 2023 Frank Ch. Eigler <fche@redhat.com> - 4.9-1
|
||||
- Upstream release, see wiki page below for detailed notes.
|
||||
https://sourceware.org/systemtap/wiki/SystemTapReleases
|
||||
|
||||
* Fri Dec 23 2022 Frank Ch. Eigler <fche@redhat.com> - 4.8-2
|
||||
- rhbz2156092 = rhbz1997192
|
||||
- rhbz2145241 = rhbz2145242
|
||||
- rhbz2156093 = rhbz2149223
|
||||
- rhbz2156095 = rhbz2149666
|
||||
- rhbz2156094 = rhbz2154430
|
||||
|
||||
* Thu Nov 03 2022 Frank Ch. Eigler <fche@redhat.com> - 4.8-1
|
||||
- Upstream release.
|
||||
|
||||
* Mon May 02 2022 Stan Cox <scox@redhat.com> - 4.7-1
|
||||
- Upstream release, see wiki page below for detailed notes.
|
||||
https://sourceware.org/systemtap/wiki/SystemTapReleases
|
||||
|
||||
* Tue Dec 07 2021 Stan Cox <scox@redhat.com> - 4.6.4
|
||||
- sys/sdt.h remove aarch64 and s390 float constraints
|
||||
|
||||
* Mon Dec 06 2021 Stan Cox <scox@redhat.com> - 4.6.3
|
||||
- sys/sdt.h remove float constraints that may cause gcc reload issues.
|
||||
|
||||
* Thu Dec 02 2021 Frank Ch. Eigler <fche@redhat.com> - 4.6.2
|
||||
- sys/sdt.h fixes for glibc ftbfs
|
||||
|
||||
* Mon Nov 15 2021 Frank Ch. Eigler <fche@redhat.com> - 4.6-1
|
||||
- Upstream release.
|
||||
|
||||
* Thu Aug 12 2021 Frank Ch. Eigler <fche@redhat.com> - 4.5-3
|
||||
- rhbz1991631 iommu tracepoints break ppc64le
|
||||
|
||||
|
|
Loading…
Reference in New Issue