Compare commits

...

No commits in common. "c8" and "86bc09d3dd5ce546324515a50d0223d9e6de4901" have entirely different histories.

14 changed files with 254 additions and 62 deletions

28
.gitignore vendored
View File

@ -1 +1,27 @@
SOURCES/skiboot-6.7.1.tar.gz /skiboot-5.1.13.tar.gz
/skiboot-5.2.0.tar.gz
/skiboot-5.5.0.tar.gz
/v5.7.tar.gz
/v5.9.8.tar.gz
/skiboot-5.10.tar.gz
/skiboot-5.10.1.tar.gz
/skiboot-5.10.2.tar.gz
/skiboot-5.11.tar.gz
/skiboot-6.0.1.tar.gz
/skiboot-6.0.4.tar.gz
/skiboot-6.1.tar.gz
/skiboot-6.2.tar.gz
/skiboot-6.3.1.tar.gz
/skiboot-6.4.tar.gz
/skiboot-6.5.tar.gz
/skiboot-6.5.1.tar.gz
/skiboot-6.5.2.tar.gz
/skiboot-6.5.3.tar.gz
/skiboot-6.5.4.tar.gz
/skiboot-6.6.tar.gz
/skiboot-6.6.1.tar.gz
/skiboot-6.6.2.tar.gz
/skiboot-6.6.3.tar.gz
/skiboot-6.6.4.tar.gz
/skiboot-6.7.tar.gz
/skiboot-6.7.1.tar.gz

View File

@ -1 +1 @@
1fddbe662d1e08e35640203876328fad6f70f392 SOURCES/skiboot-6.7.1.tar.gz 1fddbe662d1e08e35640203876328fad6f70f392 skiboot-6.7.1.tar.gz

6
gating.yaml Normal file
View File

@ -0,0 +1,6 @@
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}

View File

@ -1,3 +1,3 @@
if $programname == 'opal-prd' then /var/log/opal-prd.log if $programname == 'opal-prd' then /var/log/opal-prd.log
if $programname == 'opal-prd' and $syslogseverity <= 4 then /var/log/messages if $programname == 'opal-prd' and $syslogseverity <= 4 then /var/log/messages
if $programname == 'opal-prd' then ~ if $programname == 'opal-prd' then stop

View File

@ -1,35 +1,33 @@
%global project skiboot %global project skiboot
Name: opal-prd Name: opal-prd
Version: 6.7.1 Version: 6.7.1
Release: 1%{?dist} Release: 7%{?dist}
Summary: OPAL Processor Recovery Diagnostics Daemon Summary: OPAL Processor Recovery Diagnostics Daemon
Group: System Environment/Daemons License: ASL 2.0
License: ASL 2.0 URL: http://github.com/open-power/skiboot
URL: http://github.com/open-power/skiboot
# Presently opal-prd is supported on ppc64le architecture only. # Presently opal-prd is supported on ppc64le architecture only.
ExclusiveArch: ppc64le ExclusiveArch: ppc64le
BuildRequires: systemd BuildRequires: systemd
BuildRequires: openssl BuildRequires: openssl
BuildRequires: gcc BuildRequires: gcc
%if 0%{?fedora} %if 0%{?fedora}
BuildRequires: gcc-powerpc64-linux-gnu BuildRequires: gcc-powerpc64-linux-gnu
%endif %endif
BuildRequires: openssl-devel BuildRequires: openssl-devel
BuildRequires: python3-devel BuildRequires: python3-devel
Requires(post): systemd Requires(post): systemd
Requires(preun): systemd Requires(preun): systemd
Requires(postun): systemd Requires(postun): systemd
Source0: https://github.com/open-power/%{project}/archive/v%{version}/%{project}-%{version}.tar.gz Source0: https://github.com/open-power/%{project}/archive/v%{version}/%{project}-%{version}.tar.gz
Source1: opal-prd-rsyslog Source1: opal-prd-rsyslog
Source2: opal-prd-logrotate Source2: opal-prd-logrotate
# upstream fix
%description %description
This package provides a daemon to load and run the OpenPower firmware's This package provides a daemon to load and run the OpenPower firmware's
@ -39,7 +37,6 @@ maintenance of OpenPower Systems hardware.
%package -n opal-utils %package -n opal-utils
Summary: OPAL firmware utilities Summary: OPAL firmware utilities
Group: Applications/System
%description -n opal-utils %description -n opal-utils
This package contains utility programs. This package contains utility programs.
@ -58,15 +55,17 @@ BuildArch: noarch
OPAL firmware, aka skiboot, loads the bootloader and provides runtime OPAL firmware, aka skiboot, loads the bootloader and provides runtime
services to the OS (Linux) on IBM Power and OpenPower systems. services to the OS (Linux) on IBM Power and OpenPower systems.
%prep %prep
%setup -q -n %{project}-%{version} %autosetup -p1 -n %{project}-%{version}
%build %build
OPAL_PRD_VERSION=%{version} make V=1 CC="gcc" CFLAGS="%{build_cflags}" LDFLAGS="%{build_ldflags}" ASFLAGS="-m64 -Wa,--generate-missing-build-notes=yes" -C external/opal-prd OPAL_PRD_VERSION=%{version} make V=1 CC="gcc" CFLAGS="%{build_cflags}" LDFLAGS="%{build_ldflags}" ASFLAGS="-m64 -Wa,--generate-missing-build-notes=yes" -C external/opal-prd
GARD_VERSION=%{version} make V=1 CC="gcc" CFLAGS="%{build_cflags}" LDFLAGS="%{build_ldflags}" -C external/gard GARD_VERSION=%{version} make V=1 CC="gcc" CFLAGS="%{build_cflags}" LDFLAGS="%{build_ldflags}" -C external/gard
PFLASH_VERSION=%{version} make V=1 CC="gcc" CFLAGS="%{build_cflags}" LDFLAGS="%{build_ldflags}" -C external/pflash PFLASH_VERSION=%{version} make V=1 CC="gcc" CFLAGS="%{build_cflags}" LDFLAGS="%{build_ldflags}" -C external/pflash
XSCOM_VERSION=%{version} make V=1 CC="gcc" CFLAGS="%{build_cflags}" LDFLAGS="%{build_ldflags}" -C external/xscom-utils XSCOM_VERSION=%{version} make V=1 CC="gcc" CFLAGS="%{build_cflags}" LDFLAGS="%{build_ldflags}" -C external/xscom-utils
FFSPART_VERSION=%{version} make V=1 CC="gcc" CFLAGS="%{build_cflags}" LDFLAGS="%{build_ldflags}" -C external/ffspart FFSPART_VERSION=%{version} make V=1 CC="gcc" CFLAGS="%{build_cflags} -pie -Wl,-z,now" LDFLAGS="%{build_ldflags}" -C external/ffspart
# build skiboot with a cross-compiler on Fedora and with system compiler otherwise # build skiboot with a cross-compiler on Fedora and with system compiler otherwise
# and always use upstream compiler flags for the firmware (no CFLAGS override) # and always use upstream compiler flags for the firmware (no CFLAGS override)
@ -76,6 +75,7 @@ SKIBOOT_VERSION=%{version} make V=1 CROSS="powerpc64-linux-gnu-"
SKIBOOT_VERSION=%{version} make V=1 CROSS= SKIBOOT_VERSION=%{version} make V=1 CROSS=
%endif %endif
%install %install
OPAL_PRD_VERSION=%{version} make -C external/opal-prd install DESTDIR=%{buildroot} prefix=/usr OPAL_PRD_VERSION=%{version} make -C external/opal-prd install DESTDIR=%{buildroot} prefix=/usr
GARD_VERSION=%{version} make -C external/gard install DESTDIR=%{buildroot} prefix=/usr GARD_VERSION=%{version} make -C external/gard install DESTDIR=%{buildroot} prefix=/usr
@ -92,13 +92,14 @@ install -m 644 -p skiboot.lid.xz %{buildroot}%{_datadir}/qemu/skiboot.lid.xz
# log opal-prd messages to /var/log/opal-prd.log # log opal-prd messages to /var/log/opal-prd.log
mkdir -p %{buildroot}%{_sysconfdir}/{rsyslog.d,logrotate.d} mkdir -p %{buildroot}%{_sysconfdir}/{rsyslog.d,logrotate.d}
install -m 644 %{SOURCE1} %{buildroot}/%{_sysconfdir}/rsyslog.d/opal-prd.conf install -m 644 -p %{SOURCE1} %{buildroot}/%{_sysconfdir}/rsyslog.d/opal-prd.conf
install -m 644 %{SOURCE2} %{buildroot}/%{_sysconfdir}/logrotate.d/opal-prd install -m 644 -p %{SOURCE2} %{buildroot}/%{_sysconfdir}/logrotate.d/opal-prd
# install phberr script # install phberr script
install -D -p -m 644 external/pci-scripts/ppc.py %{buildroot}%{python3_sitelib}/ppc/__init__.py install -D -p -m 644 external/pci-scripts/ppc.py %{buildroot}%{python3_sitelib}/ppc/__init__.py
install -D -p -m 755 external/pci-scripts/phberr.py %{buildroot}%{_bindir}/phberr install -D -p -m 755 external/pci-scripts/phberr.py %{buildroot}%{_bindir}/phberr
%post %post
%systemd_post opal-prd.service %systemd_post opal-prd.service
@ -108,11 +109,12 @@ install -D -p -m 755 external/pci-scripts/phberr.py %{buildroot}%{_bindir}/phber
%postun %postun
%systemd_postun_with_restart opal-prd.service %systemd_postun_with_restart opal-prd.service
%files %files
%doc README.md %doc README.md
%license LICENCE %license LICENCE
%config(noreplace) %{_sysconfdir}/logrotate.d/opal-prd %config(noreplace) %{_sysconfdir}/logrotate.d/opal-prd
%config(noreplace) %{_sysconfdir}/rsyslog.d/opal-prd.conf %config(noreplace) %{_sysconfdir}/rsyslog.d/opal-prd.conf
%{_sbindir}/opal-prd %{_sbindir}/opal-prd
%{_unitdir}/opal-prd.service %{_unitdir}/opal-prd.service
%{_mandir}/man8/* %{_mandir}/man8/*
@ -135,55 +137,109 @@ install -D -p -m 755 external/pci-scripts/phberr.py %{buildroot}%{_bindir}/phber
%license LICENCE %license LICENCE
%{_datadir}/qemu/ %{_datadir}/qemu/
%changelog %changelog
* Mon May 10 2021 Than Ngo <than@redhat.com> - 6.7.1-1 * Wed Feb 02 2022 Than Ngo <than@redhat.com> - 6.7.1-7
- Resolves: #1921665, rebase to 6.7.1 - Resolves: #2044883, annocheck FAIL
* Mon Oct 05 2020 Than Ngo <than@redhat.com> - 6.6.3-2 * Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 6.7.1-6
- Resolves: #1885134, fix which makes the actual page off lining asynchronous - Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Thu Oct 01 2020 Than Ngo <than@redhat.com> - 6.6.3-1 * Tue Jun 22 2021 Mohan Boddu <mboddu@redhat.com> - 6.7.1-5
- Resolves: #1844427, rebase to 6.6.3 - Rebuilt for RHEL 9 BETA for openssl 3.0
Related: rhbz#1971065
* Fri Apr 24 2020 Than Ngo <than@redhat.com> - 6.6-1 * Thu Jun 10 2021 Than Ngo <than@redhat.com> - 6.7.1-4
- Resolves: #1779211, rebase to 6.6 - Resolves: #1963126, The discard action (tilde character) is deprecated
* Mon Oct 28 2019 Than Ngo <than@redhat.com> - 6.5.1-1 * Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 6.7.1-3
- Resolves: #1731434. rebase to 6.5.1 - Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Thu May 23 2019 Than Ngo <than@redhat.com> - 6.3.1-2 * Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 6.7.1-2
- Related: #1664099, log messages to /var/log/opal-prd.log - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue May 14 2019 Than Ngo <than@redhat.com> - 6.3.1-1 * Thu Jan 07 2021 Dan Horák <dan@danny.cz> - 6.7.1-1
- Resolves: #1664099, rebase to 6.3.1 - update to 6.7.1 (#1913304)
* Mon Mar 25 2019 Than Ngo <than@redhat.com> - 6.2-3 * Tue Nov 03 2020 Dan Horák <dan@danny.cz> - 6.7-2
- Related: #1664099. add missing man pages - install phberr script
- fix %%install to avoid recompilation
* Thu Mar 21 2019 Than Ngo <than@redhat.com> - 6.2-2 * Tue Nov 03 2020 Dan Horák <dan@danny.cz> - 6.7-1
- Related: #1682400, bump release for gating on tests - update to 6.7
* Tue Mar 19 2019 Than Ngo <than@redhat.com> - 6.2-1 * Fri Oct 23 2020 Dan Horák <dan@danny.cz> - 6.6.4-1
- Resolves: #1664099, rebase to 6.2 - update to 6.6.4 (#1890868)
- Resolves: #1682400, add gating on tests
* Fri Dec 14 2018 Than Ngo <than@redhat.com> - 6.1-5 * Thu Sep 10 2020 Dan Horák <dan@danny.cz> - 6.6.3-1
- Resolves: #1659458, opal-prd occ reset causes hardlockup - update to 6.6.3
* Mon Aug 10 2020 Dan Horák <dan@danny.cz> - 6.6.2-3
- build and install ffspart
- add BR: openssl for skibot image signing
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 6.6.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jul 03 2020 Dan Horák <dan@danny.cz> - 6.6.2-1
- update to 6.6.2
* Tue Jun 09 2020 Dan Horák <dan@danny.cz> - 6.6.1-1
- update to 6.6.1
* Thu Apr 23 2020 Dan Horák <dan@danny.cz> - 6.6-1
- update to 6.6
* Fri Mar 20 2020 Dan Horák <dan@danny.cz> - 6.5.4-1
- update to 6.5.4
* Wed Mar 11 2020 Dan Horák <dan@danny.cz> - 6.5.3-1
- update to 6.5.3
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 6.5.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Thu Dec 12 2019 Dan Horák <dan@danny.cz> - 6.5.2-1
- update to 6.5.2
* Thu Oct 24 2019 Dan Horák <dan@danny.cz> - 6.5.1-1
- update to 6.5.1
* Mon Aug 19 2019 Dan Horák <dan@danny.cz> - 6.5-1
- update to 6.5
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 6.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Tue Jul 16 2019 Dan Horák <dan@danny.cz> - 6.4-1
- update to 6.4
* Fri May 24 2019 Than Ngo <than@redhat.com> - 6.3.1-1
- update to 6.3.1
- log messages to /var/log/opal-prd.log
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 6.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Thu Dec 20 2018 Than Ngo <than@redhat.com> - 6.2-2
- add man pages
* Thu Dec 20 2018 Than Ngo <than@redhat.com> - 6.2-1
- update to 6.2
* Thu Sep 27 2018 Than Ngo <than@redhat.com> - 6.1-4 * Thu Sep 27 2018 Than Ngo <than@redhat.com> - 6.1-4
- opal-prd messages to /var/log/opal-prd.log - log opal-prd messages to /var/log/opal-prd.log
* Fri Sep 21 2018 Than Ngo <than@redhat.com> - 6.1-3 * Fri Sep 21 2018 Than Ngo <than@redhat.com> - 6.1-3
- Resolves: #1630612 - annocheck distro flag failures - Fixed opal-prd crash
- Fixed annocheck distro flag failures
* Mon Jul 30 2018 Than Ngo <than@redhat.com> - 6.1-2 * Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 6.1-2
- fixed bz#1568027, opal-prd crash - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Mon Jul 16 2018 Than Ngo <than@redhat.com> - 6.1-1 * Thu Jul 12 2018 Dan Horák <dan@danny.cz> - 6.1-1
- update to 6.1 - Update to latest upstream 6.1
* Fri Jun 29 2018 Than Ngo <than@redhat.com> - 6.0.4-2
- Resolves: #1596245, "diag_encl -d" creates xml file with blank space in file name
* Mon May 28 2018 Dan Horák <dan@danny.cz> - 6.0.4-1 * Mon May 28 2018 Dan Horák <dan@danny.cz> - 6.0.4-1
- Update to latest upstream 6.0.4 - Update to latest upstream 6.0.4

1
sources Normal file
View File

@ -0,0 +1 @@
SHA512 (skiboot-6.7.1.tar.gz) = 3fc121bd4ac762c16a8426915812960e29ac9a1d2c1d617dbd2d6e344e23cd4483c2128cb007b4c542644aba45f99166369afcf59bb93f270dde3a752be7fee8

View File

@ -0,0 +1,43 @@
TOPLEVEL_NAMESPACE=/CoreOS
PACKAGE_NAME=opal-prd
RELATIVE_PATH=smoke-functionality
export TEST=$(TOPLEVEL_NAMESPACE)/$(PACKAGE_NAME)/$(RELATIVE_PATH)
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
chmod a+x ./runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
# You may need to add other taregts e.g. to build executables from source code
# Add them here:
# Include Common Makefile
include /usr/share/rhts/lib/rhts-make.include
# Generate the testinfo.desc here:
$(METADATA): Makefile
@touch $(METADATA)
@echo "Owner: Than Ngo <than@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Description: Basic sanity and function tests">> $(METADATA)
@echo "Type: Sanity and function" >> $(METADATA)
@echo "TestTime: 5m" >> $(METADATA)
@echo "RunFor: $(PACKAGE_NAME)" >> $(METADATA) # add any other packages for which your test ought to run here
@echo "Requires: $(PACKAGE_NAME)" >> $(METADATA) # add any other requirements for the script to run here
@echo "Requires: opal-prd" >> $(METADATA)
@echo "Requires: opal-utils" >> $(METADATA)
@echo "License: ASL 2.0" >> $(METADATA)

View File

@ -0,0 +1,3 @@
PURPOSE of /CoreOS/opal-prd/smoke-functionality
Description: Smoke, Sanity and function tests
Author: Than Ngo <than@redhat.com>

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,44 @@
#!/bin/sh
# customize this where needed
PACKAGE="opal-prd opal-utils"
SERVICE="opal-prd"
# source the test script helpers
. /usr/bin/rhts-environment.sh || exit 1
. /usr/share/beakerlib/beakerlib.sh || exit 1
rlJournalStart
rlPhaseStartSetup
for p in $PACKAGE ; do
rlAssertRpm $p
done
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
rlRun "cp * $TmpDir" 0 "Copying test files"
rlRun "pushd $TmpDir"
rlPhaseEnd
rlPhaseStartTest "Smoke, sanity and function tests"
for i in getscom putscom opal-prd pflash; do
rlRun "/usr/sbin/$i -h" 0 "It ought show the usage"
done
for i in getscom putscom; do
rlRun "/usr/sbin/$i -v" 0 "It ought show the version"
done
rlAssertExists "/usr/lib/systemd/system/opal-prd.service"
# opal-prd only runs on bare-metal (powernv) machines
if [ -d /sys/firmware/devicetree/base/ibm,opal/diagnostics ] ; then
rlServiceStart $SERVICE
rlRun "systemctl status -l $SERVICE"
rlServiceStop $SERVICE
fi
rlRun "/usr/sbin/opal-gard -p -e -8 -f data1.bin list" 0
rlRun "/usr/sbin/opal-gard -p -e -8 -f data1.bin show 1" 0
rlRun "/usr/sbin/opal-gard -p -e -f data-p9.bin --p9 show 1" 0
rlRun "/usr/sbin/opal-gard -p -e -f blank.bin create $TmpDir/doesnt_exist0" "1-255" "It ought to be failed"
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -fr $TmpDir" 0 "Removing tmp directory"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

13
tests/tests.yml Normal file
View File

@ -0,0 +1,13 @@
---
# Tests that run in classic context
- hosts: localhost
roles:
- role: standard-test-beakerlib
tags:
- classic
tests:
- smoke-functionality
required_packages:
- findutils # beakerlib needs find command
- opal-prd
- opal-utils