From 1cd2ca01d9cbe3d5234186101b2ca913f1b926ea Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Tue, 15 Nov 2022 01:50:52 -0500 Subject: [PATCH] import ppc64-diag-2.7.8-1.el9 --- .gitignore | 1 + .ppc64-diag.metadata | 1 + SOURCES/add_regex.8 | 13 ++ SOURCES/convert_dt_node_props.8 | 16 ++ SOURCES/extract_opal_dump.8 | 25 ++ SOURCES/extract_platdump.8 | 12 + SOURCES/ppc64-diag-fedora.patch | 397 ++++++++++++++++++++++++++++++++ SOURCES/rtas_errd.8 | 37 +++ SPECS/ppc64-diag.spec | 344 +++++++++++++++++++++++++++ 9 files changed, 846 insertions(+) create mode 100644 .gitignore create mode 100644 .ppc64-diag.metadata create mode 100644 SOURCES/add_regex.8 create mode 100644 SOURCES/convert_dt_node_props.8 create mode 100644 SOURCES/extract_opal_dump.8 create mode 100644 SOURCES/extract_platdump.8 create mode 100644 SOURCES/ppc64-diag-fedora.patch create mode 100644 SOURCES/rtas_errd.8 create mode 100644 SPECS/ppc64-diag.spec diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c90dd74 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/ppc64-diag-2.7.8.tar.gz diff --git a/.ppc64-diag.metadata b/.ppc64-diag.metadata new file mode 100644 index 0000000..1b95bf0 --- /dev/null +++ b/.ppc64-diag.metadata @@ -0,0 +1 @@ +11da2a442ca94f4e06b68de0c4dcbc3432585611 SOURCES/ppc64-diag-2.7.8.tar.gz diff --git a/SOURCES/add_regex.8 b/SOURCES/add_regex.8 new file mode 100644 index 0000000..03306cf --- /dev/null +++ b/SOURCES/add_regex.8 @@ -0,0 +1,13 @@ +.TH add_regex: "8" "June 2016" "ppc64-diag" "System Administration Utilities" +.SH NAME +add_regex \- catalog parser +.SH SYNOPSIS +.B add_regex +[\fB\-C\fR \fI\,dir\/\fR] +.SH DESCRIPTION +Parse all the catalog files in the specified directory, populating +reporter_catalog, exceptions catalog, and event_catalog. +.SH OPTIONS +.TP +.BR \-C " " \fIdir\fR +Catalog directory in which catalog files are stored. diff --git a/SOURCES/convert_dt_node_props.8 b/SOURCES/convert_dt_node_props.8 new file mode 100644 index 0000000..5e7fef6 --- /dev/null +++ b/SOURCES/convert_dt_node_props.8 @@ -0,0 +1,16 @@ +.TH convert_dt_node_props "8" "June 2016" "ppc64-diag" "System Administration Utilities" +.SH NAME +convert_dt_node_props \- conversion tool +.SH SYNOPSIS +.B convert_dt_node_props +\fB\-\-context\fR \fI\,\fR \fB\-\-from \fI\,\fR \fB\-\-to \fI\,\fR \fI\,\/\fR +.SH DESCRIPTION +.HP +\fB\-c\fR, \fB\-\-context\fR: currently, \fI\,\fR must be cpu +.HP +\fB\-f\fR, \fB\-\-from\fR and \fB\-t\fR, \fB\-\-to\fR: allowed values for \fI\,\fR and \fI\,\fR: interrupt\-server, drc\-index, drc\-name +.IP +if \fI\,\fR is a drc\-index or interrupt\-server, it can be +specified in decimal, hex (with a leading 0x), or octal +(with a leading 0); if it is a drc\-name, it should be +specified as a string in double quotes diff --git a/SOURCES/extract_opal_dump.8 b/SOURCES/extract_opal_dump.8 new file mode 100644 index 0000000..d889ab4 --- /dev/null +++ b/SOURCES/extract_opal_dump.8 @@ -0,0 +1,25 @@ +.TH extract_opal_dump "8" "June 2016" "ppc64-diag" "System Administration Utilities" +.SH NAME +extract_opal_dump \- Extract opal dump +.SH SYNOPSIS +.B extract_opal_dump +[\fI\,OPTION\/\fR]... +.SH DESCRIPTION +.PP +\fB\-A\fR +Don't acknowledge dump +.TP +\fB\-s\fR \fI\,dir\fR +sysfs directory (default \fI\,/sys\/\fP) +.TP +\fB\-o\fR \fI\,dir\fR +directory to save dumps (default \fI\,/var/log/dump\/\fP) +.TP +\fB\-m\fR \fI\,max\fR +maximum number of dumps of a specific type to be saved +.TP +\fB\-w\fR +wait for a dump +.TP +\fB\-h\fR +help (this message) diff --git a/SOURCES/extract_platdump.8 b/SOURCES/extract_platdump.8 new file mode 100644 index 0000000..3088a42 --- /dev/null +++ b/SOURCES/extract_platdump.8 @@ -0,0 +1,12 @@ +.TH extract_platdump "8" "June 2016" "ppc64-diag" "System Administration Utilities" +.SH NAME +extract_platdump: \- Extract platform dump +.SH SYNOPSIS +.B extract_platdump +[\fI\,-h\/\fR] [\fI\,-v\/\fR] \fI\,\/\fR +.SH DESCRIPTION +Extracts a platform dump with a given tag to the filesystem. \fI\,\fR is the tag of the dump(s) to extract, in hex. +.HP +\fB\-h\fR: print this help message +.HP +\fB\-v\fR: verbose output diff --git a/SOURCES/ppc64-diag-fedora.patch b/SOURCES/ppc64-diag-fedora.patch new file mode 100644 index 0000000..8f16fcb --- /dev/null +++ b/SOURCES/ppc64-diag-fedora.patch @@ -0,0 +1,397 @@ +From 9e2a0ee2356b2416479affe5e56903a265303cf4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Dan=20Hor=C3=A1k?= +Date: Thu, 7 Apr 2022 19:08:47 +0200 +Subject: [PATCH 1/4] fix message catalog location + +--- + ela/Makefile.am | 22 +++++++++++----------- + ela/catalogs.h | 2 +- + ela/explain_syslog.cpp | 2 +- + ela/syslog_to_svclog.cpp | 2 +- + 4 files changed, 14 insertions(+), 14 deletions(-) + +diff --git a/ela/Makefile.am b/ela/Makefile.am +index 9dcb81c..a7d5a3f 100644 +--- a/ela/Makefile.am ++++ b/ela/Makefile.am +@@ -62,22 +62,22 @@ clean-local-ela: + CLEAN_LOCALS += clean-local-ela + + install-exec-hook-ela: +- install -d --mode=755 $(DESTDIR)/etc/ppc64-diag/message_catalog/with_regex/ +- install -D --mode=644 $(CATALOG) $(DESTDIR)/etc/ppc64-diag/message_catalog/ ++ install -d --mode=755 $(DESTDIR)/usr/share/ppc64-diag/message_catalog/with_regex/ ++ install -D --mode=644 $(CATALOG) $(DESTDIR)/usr/share/ppc64-diag/message_catalog/ + install -D --mode=644 $(CATALOG_REGEX) \ +- $(DESTDIR)/etc/ppc64-diag/message_catalog/with_regex/ ++ $(DESTDIR)/usr/share/ppc64-diag/message_catalog/with_regex/ + + INSTALL_EXEC_HOOKS += install-exec-hook-ela + + uninstall-hook-ela: +- rm -f $(DESTDIR)/etc/ppc64-diag/message_catalog/cxgb3 +- rm -f $(DESTDIR)/etc/ppc64-diag/message_catalog/e1000e +- rm -f $(DESTDIR)/etc/ppc64-diag/message_catalog/exceptions +- rm -f $(DESTDIR)/etc/ppc64-diag/message_catalog/reporters +- rm -f $(DESTDIR)/etc/ppc64-diag/message_catalog/gpfs +- rm -f $(DESTDIR)/etc/ppc64-diag/message_catalog/with_regex/cxgb3 +- rm -f $(DESTDIR)/etc/ppc64-diag/message_catalog/with_regex/e1000e +- rm -f $(DESTDIR)/etc/ppc64-diag/message_catalog/with_regex/gpfs ++ rm -f $(DESTDIR)/usr/share/ppc64-diag/message_catalog/cxgb3 ++ rm -f $(DESTDIR)/usr/share/ppc64-diag/message_catalog/e1000e ++ rm -f $(DESTDIR)/usr/share/ppc64-diag/message_catalog/exceptions ++ rm -f $(DESTDIR)/usr/share/ppc64-diag/message_catalog/reporters ++ rm -f $(DESTDIR)/usr/share/ppc64-diag/message_catalog/gpfs ++ rm -f $(DESTDIR)/usr/share/ppc64-diag/message_catalog/with_regex/cxgb3 ++ rm -f $(DESTDIR)/usr/share/ppc64-diag/message_catalog/with_regex/e1000e ++ rm -f $(DESTDIR)/usr/share/ppc64-diag/message_catalog/with_regex/gpfs + + UNINSTALL_HOOKS += uninstall-hook-ela + +diff --git a/ela/catalogs.h b/ela/catalogs.h +index ce68a86..f77ee01 100644 +--- a/ela/catalogs.h ++++ b/ela/catalogs.h +@@ -34,7 +34,7 @@ using namespace std; + #include + #include + +-#define ELA_CATALOG_DIR "/etc/ppc64-diag/message_catalog" ++#define ELA_CATALOG_DIR "/usr/share/ppc64-diag/message_catalog" + + class Parser { + protected: +diff --git a/ela/explain_syslog.cpp b/ela/explain_syslog.cpp +index f8a0dc7..4b26418 100644 +--- a/ela/explain_syslog.cpp ++++ b/ela/explain_syslog.cpp +@@ -97,7 +97,7 @@ print_help(void) + printf( + "-b begin_time\tIgnore messages with timestamps prior to begin_time.\n" + "-C catalog_dir\tUse message catalog in catalog_dir. Defaults to\n" +-"\t\t\t/etc/ppc64-diag/message_catalog.\n" ++"\t\t\t/usr/share/ppc64-diag/message_catalog.\n" + "-d\t\tPrint debugging output on stderr.\n" + "-e end_time\tStop upon reading message with timestamp after end_time.\n" + "-h\t\tPrint this help text and exit.\n" +diff --git a/ela/syslog_to_svclog.cpp b/ela/syslog_to_svclog.cpp +index 35adca2..2b3d945 100644 +--- a/ela/syslog_to_svclog.cpp ++++ b/ela/syslog_to_svclog.cpp +@@ -682,7 +682,7 @@ print_help(void) + printf( + "-b begin_time\tIgnore messages with timestamps prior to begin_time.\n" + "-C catalog_dir\tUse message catalog in catalog_dir. Defaults to\n" +-"\t\t\t/etc/ppc64-diag/message_catalog.\n" ++"\t\t\t/usr/share/ppc64-diag/message_catalog.\n" + "-d\t\tPrint debugging output on stderr.\n" + "-e end_time\tStop upon reading message with timestamp after end_time.\n" + "-F\t\tDon't stop at EOF; process newly logged messages as they occur.\n" +-- +2.34.1 + + +From 1f962c902b170f073af51693182d2b4e3ec4f174 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Dan=20Hor=C3=A1k?= +Date: Thu, 7 Apr 2022 19:09:21 +0200 +Subject: [PATCH 2/4] fix script location + +--- + scripts/Makefile.am | 15 ++++++++------- + scripts/ppc64_diag_migrate | 2 +- + scripts/ppc64_diag_mkrsrc | 4 ++-- + scripts/ppc64_diag_notify | 6 +++--- + scripts/ppc64_diag_servagent | 4 ++-- + scripts/ppc64_diag_setup | 6 +++--- + scripts/rtas_errd | 2 +- + 7 files changed, 20 insertions(+), 19 deletions(-) + +diff --git a/scripts/Makefile.am b/scripts/Makefile.am +index 29dcb78..dc88ab9 100644 +--- a/scripts/Makefile.am ++++ b/scripts/Makefile.am +@@ -11,20 +11,21 @@ INIT_FILES = scripts/rtas_errd scripts/opal_errd + SERVICE_SCRIPT = scripts/rtas_errd.service scripts/opal_errd.service + + install-exec-hook-scripts: ++ install -d --mode=755 $(DESTDIR)/usr/libexec/ppc64-diag/ + install -d --mode=755 $(DESTDIR)/etc/ppc64-diag/ +- install -D --mode=744 $(PPC64_DIAG_SCRIPT) $(DESTDIR)/etc/ppc64-diag/ +- install -D --mode=644 $(CONFIG_FILE) $(DESTDIR)/etc/ppc64-diag ++ install -D --mode=744 $(PPC64_DIAG_SCRIPT) $(DESTDIR)/usr/libexec/ppc64-diag/ ++ install -D --mode=644 $(CONFIG_FILE) $(DESTDIR)/etc/ppc64-diag/ + install -d --mode=755 $(DESTDIR)/usr/libexec/ppc64-diag/ + install -D --mode=755 $(INIT_FILES) $(DESTDIR)/usr/libexec/ppc64-diag/ + install -d --mode=755 $(DESTDIR)/usr/lib/systemd/system/ + install -D --mode=644 $(SERVICE_SCRIPT) $(DESTDIR)/usr/lib/systemd/system/ + + uninstall-hook-scripts: +- rm -f $(DESTDIR)/etc/ppc64-diag/ppc64_diag_setup +- rm -f $(DESTDIR)/etc/ppc64-diag/ppc64_diag_mkrsrc +- rm -f $(DESTDIR)/etc/ppc64-diag/ppc64_diag_notify +- rm -f $(DESTDIR)/etc/ppc64-diag/ppc64_diag_migrate +- rm -f $(DESTDIR)/etc/ppc64-diag/servevent_parse.pl ++ rm -f $(DESTDIR)/usr/libexec/ppc64-diag/ppc64_diag_setup ++ rm -f $(DESTDIR)/usr/libexec/ppc64-diag/ppc64_diag_mkrsrc ++ rm -f $(DESTDIR)/usr/libexec/ppc64-diag/ppc64_diag_notify ++ rm -f $(DESTDIR)/usr/libexec/ppc64-diag/ppc64_diag_migrate ++ rm -f $(DESTDIR)/usr/libexec/ppc64-diag/servevent_parse.pl + rm -f $(DESTDIR)/etc/ppc64-diag/ppc64-diag.config + rm -f $(DESTDIR)/usr/libexec/ppc64-diag/rtas_errd + rm -f $(DESTDIR)/usr/libexec/ppc64-diag/opal_errd +diff --git a/scripts/ppc64_diag_migrate b/scripts/ppc64_diag_migrate +index 50b5dd2..5c608eb 100755 +--- a/scripts/ppc64_diag_migrate ++++ b/scripts/ppc64_diag_migrate +@@ -1,4 +1,4 @@ +-#! /usr/bin/perl -I /etc/ppc64-diag ++#! /usr/bin/perl -I /usr/libexec/ppc64-diag + # + # This script is to be registered with servicelog as a notification tool. It + # is responsible for performing whatever actions may be necessary following +diff --git a/scripts/ppc64_diag_mkrsrc b/scripts/ppc64_diag_mkrsrc +index 53e7a27..4df8b72 100755 +--- a/scripts/ppc64_diag_mkrsrc ++++ b/scripts/ppc64_diag_mkrsrc +@@ -1,4 +1,4 @@ +-#! /usr/bin/perl -I /etc/ppc64-diag ++#! /usr/bin/perl -I /usr/libexec/ppc64-diag + # + # This script is to be registered with servicelog as a notification tool. It + # is responsible for creating a new IBM.ServiceEvent RMC resource when a +@@ -27,7 +27,7 @@ + # along with this program; if not, write to the Free Software + # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +-require "/etc/ppc64-diag/servevent_parse.pl"; ++require "/usr/libexec/ppc64-diag/servevent_parse.pl"; + + # Check to make sure that devices.chrp.base.ServiceRM is installed + $rc = system("which rpm >/dev/null 2>&1"); +diff --git a/scripts/ppc64_diag_notify b/scripts/ppc64_diag_notify +index 9f198d9..607bb7f 100755 +--- a/scripts/ppc64_diag_notify ++++ b/scripts/ppc64_diag_notify +@@ -1,4 +1,4 @@ +-#! /usr/bin/perl -I /etc/ppc64-diag ++#! /usr/bin/perl -I /usr/libexec/ppc64-diag + # + # This script is to be registered with servicelog as a notification tool. It + # is responsible for sending out e-mail notifications of new ppc64 platform +@@ -22,7 +22,7 @@ + + use Getopt::Long; + +-require "/etc/ppc64-diag/servevent_parse.pl"; ++require "/usr/libexec/ppc64-diag/servevent_parse.pl"; + + sub usage { + print "$0 [OPTIONS]\n"; +@@ -156,7 +156,7 @@ if ($flag_email) { + chomp $hostname; + $subject = "$hostname: serviceable platform event logged"; + +- if (open(MAILLIST, "< /etc/ppc64-diag/mail_list")) { ++ if (open(MAILLIST, "< /usr/libexec/ppc64-diag/mail_list")) { + while () { + chomp; + $pos = index($_, "#"); +diff --git a/scripts/ppc64_diag_servagent b/scripts/ppc64_diag_servagent +index 4f45983..9966302 100755 +--- a/scripts/ppc64_diag_servagent ++++ b/scripts/ppc64_diag_servagent +@@ -1,4 +1,4 @@ +-#! /usr/bin/perl -I /etc/ppc64-diag ++#! /usr/bin/perl -I /usr/libexec/ppc64-diag + # + # This script is to be registered with servicelog as a notification tool. It + # is responsible for invoking Electronic Service Agent in response to a +@@ -25,7 +25,7 @@ + # along with this program; if not, write to the Free Software + # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +-require "/etc/ppc64-diag/servevent_parse.pl"; ++require "/usr/libexec/ppc64-diag/servevent_parse.pl"; + + if (!-e "/usr/svcagent/bin/callsa2") { + # eSA is not installed; exit quietly +diff --git a/scripts/ppc64_diag_setup b/scripts/ppc64_diag_setup +index 283c357..2c80c5c 100755 +--- a/scripts/ppc64_diag_setup ++++ b/scripts/ppc64_diag_setup +@@ -89,15 +89,15 @@ sub unregister { + + @notification_tools = ( + +- ["/etc/ppc64-diag/ppc64_diag_notify -q -e root -l /var/log/platform", ++ ["/usr/libexec/ppc64-diag/ppc64_diag_notify -q -e root -l /var/log/platform", + "--match='serviceable=1' ". + "--type=EVENT --method=pairs_stdin"], + +- ["/etc/ppc64-diag/ppc64_diag_mkrsrc", ++ ["/usr/libexec/ppc64-diag/ppc64_diag_mkrsrc", + "--match='serviceable=1' ". + "--type=EVENT --method=pairs_stdin"], + +- ["/etc/ppc64-diag/ppc64_diag_migrate", ++ ["/usr/libexec/ppc64-diag/ppc64_diag_migrate", + "--match=\'refcode=\"#MIGRATE\" and serviceable=0\' ". + "--type=EVENT --method=pairs_stdin"], + ); +diff --git a/scripts/rtas_errd b/scripts/rtas_errd +index d5d40fe..fd9d5d2 100755 +--- a/scripts/rtas_errd ++++ b/scripts/rtas_errd +@@ -66,7 +66,7 @@ case "$1" in + echo "registering ppc64-diag with system" + rm -f /var/cache/ppc64-diag.registered + mkdir -v /var/cache/ppc64-diag.registered +- /etc/ppc64-diag/ppc64_diag_setup --register ++ /usr/libexec/ppc64-diag/ppc64_diag_setup --register + fi + echo -n "Starting rtas_errd (platform error handling) daemon: " + if [ $INSSERV -eq 1 ]; then +-- +2.34.1 + + +From 6d56d9d7b96232d2e75800282a86760ba87b9204 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Dan=20Hor=C3=A1k?= +Date: Thu, 7 Apr 2022 19:10:32 +0200 +Subject: [PATCH 3/4] fix lpd script location + +--- + lpd/Makefile.am | 8 ++++---- + lpd/scripts/lp_diag_notify | 2 +- + lpd/scripts/lp_diag_setup | 6 +++--- + 3 files changed, 8 insertions(+), 8 deletions(-) + +diff --git a/lpd/Makefile.am b/lpd/Makefile.am +index 4e0c03f..df362c0 100644 +--- a/lpd/Makefile.am ++++ b/lpd/Makefile.am +@@ -46,16 +46,16 @@ all-local-lpd: + AM_LOCALS += all-local-lpd + + install-exec-hook-lpd: +- install -d --mode=755 $(DESTDIR)/etc/ppc64-diag +- install -D --mode=744 $(LPD_SCRIPT) $(DESTDIR)/etc/ppc64-diag/ ++ install -d --mode=755 $(DESTDIR)/usr/libexec/ppc64-diag ++ install -D --mode=744 $(LPD_SCRIPT) $(DESTDIR)/usr/libexec/ppc64-diag/ + (cd $(DESTDIR)/$(sbindir) && $(LN_S) -f usysident usysattn) + (cd $(DESTDIR)/$(sbindir) && $(LN_S) -f usysident usysfault) + + INSTALL_EXEC_HOOKS += install-exec-hook-lpd + + uninstall-hook-lpd: +- rm -f $(DESTDIR)/etc/ppc64-diag/lp_diag_setup +- rm -f $(DESTDIR)/etc/ppc64-diag/lp_diag_notify ++ rm -f $(DESTDIR)/usr/libexec/ppc64-diag/lp_diag_setup ++ rm -f $(DESTDIR)/usr/libexec/ppc64-diag/lp_diag_notify + rm -f $(sbindir)/usysattn + rm -f $(sbindir)/usysfault + +diff --git a/lpd/scripts/lp_diag_notify b/lpd/scripts/lp_diag_notify +index 52dc242..f500299 100755 +--- a/lpd/scripts/lp_diag_notify ++++ b/lpd/scripts/lp_diag_notify +@@ -1,4 +1,4 @@ +-#!/usr/bin/perl -I /etc/ppc64-diag ++#!/usr/bin/perl -I /usr/libexec/ppc64-diag + # @file lp_diag_notify + # + # This script is to be registered with servicelog as a notification tool. +diff --git a/lpd/scripts/lp_diag_setup b/lpd/scripts/lp_diag_setup +index 8dabb75..4b4d0a2 100755 +--- a/lpd/scripts/lp_diag_setup ++++ b/lpd/scripts/lp_diag_setup +@@ -1,4 +1,4 @@ +-#!/usr/bin/perl -I /etc/ppc64-diag ++#!/usr/bin/perl -I /usr/libexec/ppc64-diag + # @file lp_diag_setup + # @brief Register/unregister Light Path notification tools + # with servicelog +@@ -91,10 +91,10 @@ sub unregister { + } + + @notification_tools = ( +- ["/etc/ppc64-diag/lp_diag_notify -e", ++ ["/usr/libexec/ppc64-diag/lp_diag_notify -e", + "--match='disposition>=1 and severity>=4 and serviceable=1' ". + "--type=EVENT --method=num_arg"], +- ["/etc/ppc64-diag/lp_diag_notify -r", ++ ["/usr/libexec/ppc64-diag/lp_diag_notify -r", + "--type=REPAIR --method=num_arg"], + ); + +-- +2.34.1 + + +From 156ec91278ba350a4cd7a722a2431e07e4f461bc Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Dan=20Hor=C3=A1k?= +Date: Thu, 7 Apr 2022 19:11:02 +0200 +Subject: [PATCH 4/4] fix permissions + +--- + diags/Makefile.am | 2 +- + lpd/Makefile.am | 2 +- + rtas_errd/Makefile.am | 2 +- + scripts/Makefile.am | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/diags/Makefile.am b/diags/Makefile.am +index f513cec..268d5f4 100644 +--- a/diags/Makefile.am ++++ b/diags/Makefile.am +@@ -43,7 +43,7 @@ DIAG_CRONTAB_SCRIPT = diags/run_diag_encl + install-exec-hook-diag: + install -d --mode=755 $(DESTDIR)/var/log/ppc64-diag/diag_disk + install -d --mode=755 $(DESTDIR)/etc/cron.daily/ +- install -D --mode=744 $(DIAG_CRONTAB_SCRIPT) $(DESTDIR)/etc/cron.daily/ ++ install -D --mode=644 $(DIAG_CRONTAB_SCRIPT) $(DESTDIR)/etc/cron.daily/ + + INSTALL_EXEC_HOOKS += install-exec-hook-diag + +diff --git a/lpd/Makefile.am b/lpd/Makefile.am +index df362c0..c430b9a 100644 +--- a/lpd/Makefile.am ++++ b/lpd/Makefile.am +@@ -47,7 +47,7 @@ AM_LOCALS += all-local-lpd + + install-exec-hook-lpd: + install -d --mode=755 $(DESTDIR)/usr/libexec/ppc64-diag +- install -D --mode=744 $(LPD_SCRIPT) $(DESTDIR)/usr/libexec/ppc64-diag/ ++ install -D --mode=755 $(LPD_SCRIPT) $(DESTDIR)/usr/libexec/ppc64-diag/ + (cd $(DESTDIR)/$(sbindir) && $(LN_S) -f usysident usysattn) + (cd $(DESTDIR)/$(sbindir) && $(LN_S) -f usysident usysfault) + +diff --git a/rtas_errd/Makefile.am b/rtas_errd/Makefile.am +index f475840..ed70978 100644 +--- a/rtas_errd/Makefile.am ++++ b/rtas_errd/Makefile.am +@@ -47,7 +47,7 @@ dist_man_MANS += rtas_errd/man/rtas_errd.8 + + install-exec-hook-rtas-errd: + install -d --mode=755 $(DESTDIR)/etc/ +- install -D --mode=744 $(rtas_scripts) $(DESTDIR)/etc/ ++ install -D --mode=755 $(rtas_scripts) $(DESTDIR)/etc/ + + uninstall-hook-rtas-errd: + rm -f $(DESTDIR)/etc/rc.powerfail +diff --git a/scripts/Makefile.am b/scripts/Makefile.am +index dc88ab9..637168f 100644 +--- a/scripts/Makefile.am ++++ b/scripts/Makefile.am +@@ -13,7 +13,7 @@ SERVICE_SCRIPT = scripts/rtas_errd.service scripts/opal_errd.service + install-exec-hook-scripts: + install -d --mode=755 $(DESTDIR)/usr/libexec/ppc64-diag/ + install -d --mode=755 $(DESTDIR)/etc/ppc64-diag/ +- install -D --mode=744 $(PPC64_DIAG_SCRIPT) $(DESTDIR)/usr/libexec/ppc64-diag/ ++ install -D --mode=755 $(PPC64_DIAG_SCRIPT) $(DESTDIR)/usr/libexec/ppc64-diag/ + install -D --mode=644 $(CONFIG_FILE) $(DESTDIR)/etc/ppc64-diag/ + install -d --mode=755 $(DESTDIR)/usr/libexec/ppc64-diag/ + install -D --mode=755 $(INIT_FILES) $(DESTDIR)/usr/libexec/ppc64-diag/ +-- +2.34.1 + diff --git a/SOURCES/rtas_errd.8 b/SOURCES/rtas_errd.8 new file mode 100644 index 0000000..b274f0d --- /dev/null +++ b/SOURCES/rtas_errd.8 @@ -0,0 +1,37 @@ +.TH RTAS_ERRD "8" "rtas_errd" "System Administration Utilities" +.SH NAME +rtas_errd \- rtas_errd +.SH SYNOPSIS +.B rtas_errd +[\fI\,OPTION\/\fR] +.SH DESCRIPTION +.TP +\fB\-c\fR, \fB\-\-config\fR=\fI\,FILE\/\fR +path to config file (default \fI\,/etc/ppc64\-diag/ppc64\-diag.config\/\fP) +.TP +\fB\-d\fR, \fB\-\-debug\fR +don't daemonize, increase librtas debug level +.TP +\fB\-e\fR, \fB\-\-epowfile\fR=\fI\,FILE\/\fR +path to epow status file (default \fI\,/var/log/epow_status\/\fP) +.TP +\fB\-f\fR, \fB\-\-file\fR=\fI\,FILE\/\fR +path to RTAS test file +.TP +\fB\-h\fR, \fB\-\-help\fR +help (this message) +.TP +\fB\-l\fR, \fB\-\-logfile\fR=\fI\,FILE\/\fR +path to rtas_errd debug logfile (default \fI\,/var/log/rtas_errd.log\/\fP) +.TP +\fB\-m\fR, \fB\-\-msgsfile\fR=\fI\,FILE\/\fR +path to syslog +.TP +\fB\-p\fR, \fB\-\-platformfile\fR=\fI\,FILE\/\fR +path to platform_log (default \fI\,/var/log/platform\/\fP) +.TP +\fB\-R\fR, \fB\-\-nodrmgr\fR +no drmgr +.TP +\fB\-s\fR, \fB\-\-scenario\fR=\fI\,FILE\/\fR +path to RTAS scenario file diff --git a/SPECS/ppc64-diag.spec b/SPECS/ppc64-diag.spec new file mode 100644 index 0000000..a00bf97 --- /dev/null +++ b/SPECS/ppc64-diag.spec @@ -0,0 +1,344 @@ +Name: ppc64-diag +Version: 2.7.8 +Release: 1%{?dist} +Summary: PowerLinux Platform Diagnostics +URL: https://github.com/power-ras/%{name} +License: GPLv2 +ExclusiveArch: ppc %{power64} +BuildRequires: make +BuildRequires: gcc-c++ +BuildRequires: libservicelog-devel +BuildRequires: flex +BuildRequires: perl-interpreter +BuildRequires: byacc +BuildRequires: libvpd-devel >= 2.2.9 +BuildRequires: ncurses-devel +BuildRequires: librtas-devel >= 1.4.0 +BuildRequires: systemd-units +BuildRequires: systemd-devel +BuildRequires: libtool +BuildRequires: bison + +Requires: ppc64-diag-rtas >= 2.7.6 +Requires: servicelog +Requires: lsvpd +Requires: powerpc-utils >= 1.3.0 + +Source0: https://github.com/power-ras/%{name}/archive/v%{version}/%{name}-%{version}.tar.gz +Source1: add_regex.8 +Source2: convert_dt_node_props.8 +Source3: extract_opal_dump.8 +Source4: extract_platdump.8 +Source5: rtas_errd.8 + +# fix paths and permissions +Patch0: ppc64-diag-fedora.patch + +%description +This package contains various diagnostic tools for PowerLinux. +These tools captures the diagnostic events from Power Systems +platform firmware, SES enclosures and device drivers, and +write events to servicelog database. It also provides automated +responses to urgent events such as environmental conditions and +predictive failures, if appropriate modifies the FRUs fault +indicator(s) and provides event notification to system +administrators or connected service frameworks. + +%package rtas +Summary: rtas_errd daemon +# PCI hotplug support on PowerKVM guest depends on below powerpc-utils version. +Requires: powerpc-utils-core >= 1.3.7-5 + +%description rtas +This package contains only rtas_errd daemon. + +%prep +%autosetup -p1 + +%build +./autogen.sh +CXXFLAGS="-std=gnu++14 %{build_cflags}" %configure +LDFLAGS="%{build_ldflags}" CFLAGS="%{build_cflags}" CXXFLAGS="-std=gnu++14 %{build_cflags}" make %{?_smp_mflags} V=1 + +%install +make install DESTDIR=$RPM_BUILD_ROOT +chmod 644 COPYING +rm -f $RPM_BUILD_ROOT%{_docdir}/ppc64-diag/* +mkdir -p $RPM_BUILD_ROOT/%{_libexecdir}/%{name} +mkdir -p $RPM_BUILD_ROOT/%{_unitdir} +mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/ses_pages +mkdir -p $RPM_BUILD_ROOT/%{_localstatedir}/log/dump +mkdir -p $RPM_BUILD_ROOT/%{_localstatedir}/log/opal-elog +ln -sfv %{_sbindir}/usysattn $RPM_BUILD_ROOT/%{_sbindir}/usysfault +install -m 644 %{SOURCE1} %{SOURCE2} %{SOURCE3} %{SOURCE4} %{SOURCE5} $RPM_BUILD_ROOT/%{_mandir}/man8/ + +%files +%license COPYING +%doc README.md +%dir %{_sysconfdir}/%{name} +%dir %{_sysconfdir}/%{name}/ses_pages +%dir %{_localstatedir}/log/%{name}/diag_disk +%dir %{_localstatedir}/log/dump +%dir %{_localstatedir}/log/opal-elog +%{_mandir}/man8/* +%{_sbindir}/* +%dir %{_datadir}/%{name} +%dir %{_datadir}/%{name}/message_catalog/ +%{_libexecdir}/%{name}/ppc64_diag_migrate +%{_libexecdir}/%{name}/ppc64_diag_mkrsrc +%{_libexecdir}/%{name}/ppc64_diag_notify +%{_libexecdir}/%{name}/ppc64_diag_setup +%{_libexecdir}/%{name}/lp_diag_setup +%{_libexecdir}/%{name}/lp_diag_notify +%{_libexecdir}/%{name}/servevent_parse.pl +%{_datadir}/%{name}/message_catalog/* +%{_unitdir}/opal_errd.service +%{_sysconfdir}/cron.daily/run_diag_encl + +# get rid of obsolete initscripts for rhel >=7 +%exclude %{_libexecdir}/%{name}/rtas_errd +%exclude %{_libexecdir}/%{name}/opal_errd + +# exclude stuffs which are moved to rtas +%exclude %{_mandir}/man8/convert_dt_node_props* +%exclude %{_mandir}/man8/extract_platdump* +%exclude %{_mandir}/man8/rtas_errd* +%exclude %{_sbindir}/convert_dt_node_props +%exclude %{_sbindir}/extract_platdump +%exclude %{_sbindir}/rtas_errd + +%files rtas +%license COPYING +%dir %{_sysconfdir}/%{name} +%{_mandir}/man8/convert_dt_node_props* +%{_mandir}/man8/extract_platdump* +%{_mandir}/man8/rtas_errd* +%config(noreplace) %{_sysconfdir}/%{name}/ppc64-diag.config +%{_sbindir}/convert_dt_node_props +%{_sbindir}/extract_platdump +%{_sbindir}/rtas_errd +%{_sysconfdir}/rc.powerfail +%{_unitdir}/rtas_errd.service + +%post +# Post-install script -------------------------------------------------- +%{_libexecdir}/%{name}/lp_diag_setup --register >/dev/null 2>&1 +%{_libexecdir}/%{name}/ppc64_diag_setup --register >/dev/null 2>&1 +if [ "$1" = "1" ]; then # first install + systemctl -q enable opal_errd.service >/dev/null + systemctl start opal_errd.service >/dev/null +elif [ "$1" = "2" ]; then # upgrade + systemctl restart opal_errd.service >/dev/null + systemctl daemon-reload > /dev/null 2>&1 +fi + +%preun +# Pre-uninstall script ------------------------------------------------- +if [ "$1" = "0" ]; then # last uninstall + systemctl stop opal_errd.service >/dev/null + systemctl -q disable opal_errd.service + %{_libexecdir}/%{name}/ppc64_diag_setup --unregister >/dev/null + %{_libexecdir}/%{name}/lp_diag_setup --unregister >/dev/null + systemctl daemon-reload > /dev/null 2>&1 +fi + +%triggerin -- librtas +# trigger on librtas upgrades ------------------------------------------ +if [ "$2" = "2" ]; then + systemctl restart opal_errd.service >/dev/null + systemctl restart rtas_errd.service >/dev/null +fi + + +%post rtas +if [ "$1" = "1" ]; then # first install + systemctl -q enable rtas_errd.service >/dev/null + systemctl start rtas_errd.service >/dev/null +elif [ "$1" = "2" ]; then # upgrade + systemctl restart rtas_errd.service >/dev/null + systemctl daemon-reload > /dev/null 2>&1 +fi + +%preun rtas +if [ "$1" = "0" ]; then # last uninstall + systemctl stop rtas_errd.service >/dev/null + systemctl -q disable rtas_errd.service + systemctl daemon-reload > /dev/null 2>&1 +fi + +%changelog +* Fri May 06 2022 Than Ngo - 2.7.8-1 +- Resolves: #2051286, rebase to 2.7.8 + +* Tue Aug 10 2021 Mohan Boddu - 2.7.7-2 +- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags + Related: rhbz#1991688 + +* Mon May 17 2021 Than Ngo - 2.7.7-1 +- Resolves: #1869567, rebase to 2.7.7 + +* Fri Apr 16 2021 Mohan Boddu - 2.7.6-10 +- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 + +* Wed Jan 27 2021 Fedora Release Engineering - 2.7.6-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Tue Oct 27 2020 Jeff Law - 2.7.6-8 +- Force C++14 for configure step too + +* Tue Oct 27 2020 Jeff Law - 2.7.6-7 +- Force C++14 mode as this code is not C++17 ready + +* Tue Jul 28 2020 Fedora Release Engineering - 2.7.6-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon Mar 30 2020 Than Ngo - 2.7.6-5 +- add requirement on powerpc-utils in main package + +* Sat Mar 28 2020 Than Ngo - 2.7.6-4 +- create rtas subpackage to avoid the perl dependency + +* Thu Jan 30 2020 Fedora Release Engineering - 2.7.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Mon Dec 02 2019 Than Ngo - 2.7.6-2 +- Update Url and Source + +* Wed Nov 27 2019 Than Ngo - 2.7.6-1 +- rebase to 2.7.6 +- update Url + +* Fri Jul 26 2019 Fedora Release Engineering - 2.7.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu Apr 25 2019 Vasant Hegde - 2.7.5-1 +- Update to latest upstream 2.7.5 + +* Sat Feb 02 2019 Fedora Release Engineering - 2.7.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jul 13 2018 Fedora Release Engineering - 2.7.4-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Thu May 10 2018 Dan Horák - 2.7.4-2 +- fix condition for rtas_errd service (#1575638) + +* Fri Mar 09 2018 Than Ngo - 2.7.4-1 +- update to latest upstream 2.7.4 + +* Wed Mar 07 2018 Than Ngo - 2.7.1-6 +- fixed bz#1552653 - ppc64-diag: Missing Fedora build flags injection + +* Fri Feb 09 2018 Fedora Release Engineering - 2.7.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Aug 03 2017 Fedora Release Engineering - 2.7.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 2.7.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sat Feb 11 2017 Fedora Release Engineering - 2.7.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Mon May 9 2016 Vasant Hegde - 2.7.1-1 +- Update to latest upstream 2.7.1 + +* Sat Apr 9 2016 Peter Robinson 2.7.0-2 +- Rebuild for librtas soname bump +- Use %%license + +* Mon Mar 21 2016 Vasant Hegde - 2.7.0-1 +- Update to latest upstream 2.7.0 +- Change license to GPLv2 + +* Thu Feb 04 2016 Fedora Release Engineering - 2.6.10-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Mon Nov 16 2015 Vasant Hegde - 2.6.10 +- Update to latest upstream 2.6.10 + +* Tue Aug 4 2015 Peter Robinson 2.6.7-4 +- Make the build verbase as per packaging standards + +* Thu Jun 18 2015 Fedora Release Engineering - 2.6.7-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Thu Sep 25 2014 Vasant Hegde - 2.6.7-2 +- Update dependency list + +* Thu Sep 25 2014 Vasant Hegde - 2.6.7 +- Update to latest upstream 2.6.7 + +* Sat Jun 07 2014 Fedora Release Engineering - 2.6.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Tue Apr 15 2014 Vasant Hegde - 2.6.6 +- Update to latest upstream 2.6.6 + +* Wed Apr 02 2014 Vasant Hegde - 2.6.5 +- Update to latest upstream 2.6.5 + +* Fri Mar 21 2014 Vasant Hegde - 2.6.4 +- Update to latest upstream 2.6.4 + +* Fri Mar 07 2014 Vasant Hegde - 2.6.3 +- Update to latest upstream 2.6.3 + +* Thu Oct 10 2013 Vasant Hegde - 2.6.2-3 +- Add ppc64le architecture + +* Sun Sep 15 2013 Vasant Hegde - 2.6.2-2 +- Fix minor build issue. +- Fix PRRN hotplug script location issue + +* Wed Aug 21 2013 Vasant Hegde - 2.6.2 +- Update to latest upstream 2.6.2 + +* Sun Aug 04 2013 Fedora Release Engineering - 2.6.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Tue May 21 2013 Vasant Hegde - 2.6.1-2 +- Add ncurses-devel as build dependency +- Fix script location issue + +* Mon May 20 2013 Vasant Hegde - 2.6.1 +- Update to latest upstream 2.6.1 + +* Thu Feb 14 2013 Fedora Release Engineering - 2.4.3-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Wed Sep 26 2012 Karsten Hopp 2.4.3-6 +- revert permissions fix, filter requirement instead + +* Mon Sep 24 2012 karsten Hopp 2.4.3-4 +- fix permissions of servevent_parse.pl + +* Fri Jul 27 2012 Lukáš Nykrýn - 2.4.3-3 +- rename .service file +- auto start rtas_errd (#843471) + +* Sat Jul 21 2012 Fedora Release Engineering - 2.4.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Fri May 04 2012 Karsten Hopp 2.4.3-1 +- update to 2.4.3 + +* Wed Feb 15 2012 Karsten Hopp 2.4.2-5 +- don't strip binaries +- fix some build issues + +* Thu Sep 22 2011 Karsten Hopp 2.4.2-4 +- fix preun and post install scriptlets + +* Fri Sep 09 2011 Karsten Hopp 2.4.2-3 +- add buildrequirement systemd-units for _unitdir rpm macro +- move helper scripts to libexecdir/ppc64-diag + +* Wed Sep 07 2011 Karsten Hopp 2.4.2-2 +- additional fixes for Fedora package review (bugzilla #736062) + +* Wed Aug 17 2011 Karsten Hopp 2.4.2-1 +- initial Fedora version, based on IBM spec file with rpmlint cleanups + - move scripts to /usr/share/ppc-diag + - don't start service automatically after install