Update to latest bug fix PCP release

Resolves: RHEL-62801
Resolves: RHEL-57797
Resolves: RHEL-57795
Resolves: RHEL-56836
Resolves: RHEL-22723
This commit is contained in:
Nathan Scott 2024-11-06 17:44:04 +11:00
parent 6741d51e4b
commit 54b7bc326c
3 changed files with 21 additions and 164 deletions

View File

@ -1,14 +1,11 @@
Name: pcp Name: pcp
Version: 6.3.0 Version: 6.3.2
Release: 4%{?dist} Release: 1%{?dist}
Summary: System-level performance monitoring and performance management Summary: System-level performance monitoring and performance management
License: GPL-2.0-or-later AND LGPL-2.1-or-later AND CC-BY-3.0 License: GPL-2.0-or-later AND LGPL-2.1-or-later AND CC-BY-3.0
URL: https://pcp.io URL: https://pcp.io
Source0: https://github.com/performancecopilot/pcp/releases/pcp-%{version}.src.tar.gz Source0: https://github.com/performancecopilot/pcp/releases/pcp-%{version}.src.tar.gz
Patch0: redhat-issue-52316-drop-gfs2-metrics.patch
%if 0%{?fedora} >= 40 || 0%{?rhel} >= 10 %if 0%{?fedora} >= 40 || 0%{?rhel} >= 10
ExcludeArch: %{ix86} ExcludeArch: %{ix86}
%endif %endif
@ -479,11 +476,12 @@ fi
} }
%global run_pmieconf() %{expand: %global run_pmieconf() %{expand:
if [ -w "%1" ] if [ -d "%1" -a -w "%1" -a -w "%1/%2" ]
then then
pmieconf -c enable "%2" pmieconf -f "%1/%2" -c enable "%3"
chown pcp:pcp "%1/%2" 2>/dev/null
else else
echo "WARNING: Cannot write to %1, skipping pmieconf enable of %2." >&2 echo "WARNING: Cannot write to %1/%2, skipping pmieconf enable of %3." >&2
fi fi
} }
@ -3226,11 +3224,12 @@ for PMDA in dm nfsclient openmetrics ; do
fi fi
done done
# auto-enable these usually optional pmie rules # auto-enable these usually optional pmie rules
%{run_pmieconf "$PCP_PMIECONFIG_DIR" dmthin} %{run_pmieconf "$PCP_PMIECONFIG_DIR" config.default dmthin}
%if 0%{?rhel} <= 9 # managed via /usr/lib/systemd/system-preset/90-default.preset nowadays:
%if 0%{?rhel} > 0 && 0%{?rhel} < 10
%if !%{disable_systemd} %if !%{disable_systemd}
systemctl restart pcp-reboot-init pmcd pmlogger pmie >/dev/null 2>&1 systemctl restart pmcd pmlogger pmie >/dev/null 2>&1
systemctl enable pcp-reboot-init pmcd pmlogger pmie >/dev/null 2>&1 systemctl enable pmcd pmlogger pmie >/dev/null 2>&1
%else %else
/sbin/chkconfig --add pmcd >/dev/null 2>&1 /sbin/chkconfig --add pmcd >/dev/null 2>&1
/sbin/chkconfig --add pmlogger >/dev/null 2>&1 /sbin/chkconfig --add pmlogger >/dev/null 2>&1
@ -3249,6 +3248,8 @@ PCP_LOG_DIR=%{_logsdir}
%if !%{disable_systemd} %if !%{disable_systemd}
# clean up any stale symlinks for deprecated pm*-poll services # clean up any stale symlinks for deprecated pm*-poll services
rm -f %{_sysconfdir}/systemd/system/pm*.requires/pm*-poll.* >/dev/null 2>&1 || true rm -f %{_sysconfdir}/systemd/system/pm*.requires/pm*-poll.* >/dev/null 2>&1 || true
systemctl restart pcp-reboot-init >/dev/null 2>&1
systemctl enable pcp-reboot-init >/dev/null 2>&1
%systemd_postun_with_restart pmcd.service %systemd_postun_with_restart pmcd.service
%systemd_post pmcd.service %systemd_post pmcd.service
@ -3596,6 +3597,13 @@ fi
%files zeroconf -f pcp-zeroconf-files.rpm %files zeroconf -f pcp-zeroconf-files.rpm
%changelog %changelog
* Wed Nov 06 2024 Nathan Scott <nathans@redhat.com> - 6.3.2-1
- Align start of PCP services with systemd presets (RHEL-22723)
- Improved pcp-xsos command line error diagnostics (RHEL-56836)
- Fix buffer sizing checks in pmstore PDU handling (RHEL-57795)
- Guard against symlink attacks in pmpost program (RHEL-57797)
- Update to latest stable version of PCP (RHEL-62801)
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 6.3.0-4 * Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 6.3.0-4
- Bump release for October 2024 mass rebuild: - Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018 Resolves: RHEL-64018

View File

@ -1,151 +0,0 @@
commit 6e63a17575440733ff03524569c8ee1a5d9e922e
Author: Nathan Scott <nathans@redhat.com>
Date: Tue Aug 13 22:02:32 2024 +1000
build: drop gfs2 PMDA from build if distro vendor opts-out
Resolves Red Hat issue: RHEL-52316
diff --git a/build/rpm/GNUmakefile b/build/rpm/GNUmakefile
index 618c26cdcc..7cca59f34c 100644
--- a/build/rpm/GNUmakefile
+++ b/build/rpm/GNUmakefile
@@ -70,6 +70,7 @@ pcp.spec: pcp.spec.in
-e's|@pmda_bcc@|$(PMDA_BCC)|g' \
-e's|@pmda_bpf@|$(PMDA_BPF)|g' \
-e's|@pmda_bpftrace@|$(PMDA_BPFTRACE)|g' \
+ -e's|@pmda_gfs2@|$(PMDA_GFS2)|g' \
-e's|@pmda_statsd@|$(PMDA_STATSD)|g' \
-e's|@pmda_systemd@|$(PMDA_SYSTEMD)|g' \
-e's|@pmda_infiniband@|$(PMDA_INFINIBAND)|g' \
diff --git a/configure b/configure
index cb3160c0c8..62add7c6aa 100755
--- a/configure
+++ b/configure
@@ -749,6 +749,7 @@ enable_selinux
PMDA_POSTFIX
QSHAPE
PMDA_STATSD
+PMDA_GFS2
lib_for_chan
lib_for_hdr_histogram
PMDA_PERFEVENT
@@ -1049,6 +1050,7 @@ with_python
with_python3
with_dstat_symlink
with_perfevent
+with_pmdagfs2
with_pmdastatsd
with_pmdabcc
with_pmdabpf
@@ -1794,6 +1796,7 @@ Optional Packages:
--with-dstat-symlink enable support for /usr/bin/dstat symlink (default
is on)
--with-perfevent enable perfevent pmda (default is on)
+ --with-pmdagfs2 enable GFS2 pmda (default is on)
--with-pmdastatsd enable statds pmda (default is on)
--with-pmdabcc enable BCC pmda (default is on)
--with-pmdabpf enable BPF pmda (default is on)
@@ -3546,6 +3549,16 @@ fi
+# Check whether --with-pmdagfs2 was given.
+if test ${with_pmdagfs2+y}
+then :
+ withval=$with_pmdagfs2; do_pmdagfs2=$withval; PACKAGE_CONFIGURE="$PACKAGE_CONFIGURE --with-pmdagfs2=$withval"
+else $as_nop
+ do_pmdagfs2=check
+fi
+
+
+
# Check whether --with-pmdastatsd was given.
if test ${with_pmdastatsd+y}
then :
@@ -13261,6 +13274,26 @@ fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the GFS2 PMDA should be included" >&5
+printf %s "checking if the GFS2 PMDA should be included... " >&6; }
+pmda_gfs2=false
+if test "x$do_pmdagfs2" = "xyes"
+then :
+ pmda_gfs2=true
+fi
+if test "x$do_pmdagfs2" = "xcheck"
+then :
+
+ if test $target_os = linux; then
+ pmda_gfs2=true
+ fi
+fi
+PMDA_GFS2=$pmda_gfs2
+
+if $pmda_gfs2; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }; else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }; fi
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the statsd PMDA should be included" >&5
printf %s "checking if the statsd PMDA should be included... " >&6; }
pmda_statsd=false
diff --git a/configure.ac b/configure.ac
index 9fa9c3f999..8e680b0f34 100644
--- a/configure.ac
+++ b/configure.ac
@@ -128,6 +128,11 @@ AC_ARG_WITH([perfevent],
[do_perfevent=$withval; PACKAGE_CONFIGURE="$PACKAGE_CONFIGURE --with-perfevent=$withval"],
[do_perfevent=check])
+AC_ARG_WITH([pmdagfs2],
+ [AS_HELP_STRING([--with-pmdagfs2],[enable GFS2 pmda (default is on)])],
+ [do_pmdagfs2=$withval; PACKAGE_CONFIGURE="$PACKAGE_CONFIGURE --with-pmdagfs2=$withval"],
+ [do_pmdagfs2=check])
+
AC_ARG_WITH([pmdastatsd],
[AS_HELP_STRING([--with-pmdastatsd],[enable statds pmda (default is on)])],
[do_pmdastatsd=$withval; PACKAGE_CONFIGURE="$PACKAGE_CONFIGURE --with-pmdastatsd=$withval"],
@@ -2222,6 +2227,17 @@ AC_SUBST(lib_for_hdr_histogram)
AC_CHECK_LIB(chan, chan_init, [lib_for_chan="-lchan"])
AC_SUBST(lib_for_chan)
+dnl Do you want GFS2 metrics (no longer supported in some Linux distros)
+AC_MSG_CHECKING([if the GFS2 PMDA should be included])
+pmda_gfs2=false
+AS_IF([test "x$do_pmdagfs2" = "xyes"], [pmda_gfs2=true])
+AS_IF([test "x$do_pmdagfs2" = "xcheck"], [
+ if test $target_os = linux; then
+ pmda_gfs2=true
+ fi])
+AC_SUBST(PMDA_GFS2, $pmda_gfs2)
+if $pmda_gfs2; then AC_MSG_RESULT(yes); else AC_MSG_RESULT(no); fi
+
dnl Do you have ragel, hdr_histogram and chan libraries for pmdastatsd?
AC_MSG_CHECKING([if the statsd PMDA should be included])
pmda_statsd=false
diff --git a/src/include/builddefs.in b/src/include/builddefs.in
index a34095cdaf..b82aaa2fba 100644
--- a/src/include/builddefs.in
+++ b/src/include/builddefs.in
@@ -346,6 +346,7 @@ PMDA_BCC = @PMDA_BCC@
PMDA_BPF = @PMDA_BPF@
PMDA_BPFTRACE = @PMDA_BPFTRACE@
PMDA_JSON = @PMDA_JSON@
+PMDA_GFS2 = @PMDA_GFS2@
PMDA_STATSD = @PMDA_STATSD@
PMDA_LIBVIRT = @PMDA_LIBVIRT@
PMDA_SYSTEMD = @PMDA_SYSTEMD@
diff --git a/src/pmdas/gfs2/GNUmakefile b/src/pmdas/gfs2/GNUmakefile
index 18c650f113..85e17a0e9e 100644
--- a/src/pmdas/gfs2/GNUmakefile
+++ b/src/pmdas/gfs2/GNUmakefile
@@ -42,7 +42,7 @@ default: build-me
include $(BUILDRULES)
-ifeq "$(TARGET_OS)" "linux"
+ifeq "$(PMDA_GFS2)" "true"
build-me: $(CMDTARGET) $(LIBTARGET)
install: default

View File

@ -1 +1 @@
SHA512 (pcp-6.3.0.src.tar.gz) = e9a85ce0c51412fe59879694b027c8b489fef461b6d8133f8f01397d8553366b0a7967d150e0f939707ee704402c1710f93333f0c4ce3174cfdc36b48300e6e8 SHA512 (pcp-6.3.2.src.tar.gz) = 812ed40b848675092ad27fed7265b5a09f3d4dc054748481d5c0bb4f534ab2caa5e4807b320f2969d8a779d0bbbe705866fec654b14d225bbedd721c91c3e257