MAINTAINERS | 8 + include/hw/ppc/pnv.h | 7 + include/hw/ppc/pnv_mpipl.h | 168 ++++++++++++ hw/ppc/pnv.c | 98 +++++++ hw/ppc/pnv_mpipl.c | 482 ++++++++++++++++++++++++++++++++++ hw/ppc/pnv_sbe.c | 84 +++++- hw/ppc/meson.build | 1 + tests/functional/ppc64/test_fadump.py | 35 +-- 8 files changed, 852 insertions(+), 31 deletions(-) create mode 100644 include/hw/ppc/pnv_mpipl.h create mode 100644 hw/ppc/pnv_mpipl.c
The following changes since commit ae56950eac7b61b1abf42003329ee0f3ce111711:
Merge tag 'firmware-20260310-pull-request' of https://gitlab.com/kraxel/qemu into staging (2026-03-10 13:32:30 +0000)
are available in the Git repository at:
https://gitlab.com/harshpb/qemu.git tags/pull-ppc-for-11.0-softfreeze-20260310
for you to fetch changes up to 8d00b61217814fa6809768b8d2ca13167ad4106a:
MAINTAINERS: Add entry for MPIPL (PowerNV) (2026-03-10 20:23:46 +0530)
----------------------------------------------------------------
PPC PR for 11.0 soft-freeze
- MPIPL support for PowerNV
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEa4EM1tK+EPOIPSFCRUTplPnWj7sFAmmwMSQACgkQRUTplPnW
j7sRUw/9G0iQ9VAao0nmmf4M/cKsQueZEA01KS2C4nGb2ggoDkS0oBrnFivW+Spq
YLR5dNw/p9eu5OzRIVHIHaGA8128vXWYUU/aa4rFOTQRMheLgnlNSqslnEJ+JJ05
RF/P6MhlY6kvXr3p7zE63SWStmzDKdzWsAYKWBFxQh5Vy7hnDL5p3G3Pq6WEf2x6
eK7b0x+WM6ni1SCTXkDnr0Cvk7f8oAshcuPV7hl2Y4jLvjkNzCMtcJOKAYfZxLW0
63f1Hpw27mJEVuOfb9UseyVsw/N/rtd/nSTf0mXpua/q5OVtgMjw/GELNCF4MQNa
Rlh1wz4UuAnRTPWxnT940TadIOVZU3m8+XMk1eAzvKWgeHcEk+yXKmlMT8D1weLL
Y3raH5zua/Jt2j4BczjCb4ho27pzraEzk5CAPgwS0po66J0D69T6eC+kE3MAKA8s
aj5cXB+fiH5/NA6VpQJ2jmYDErAJctiTTnYFL8MawzBr2/aaJqjMjyZUJl9ZJtFS
7PvW+gASC6IV74U4x+QVWHLHgjHzBcqu+nRFQTlmCq3xWrWf9oJe08XPzSBnsuZB
Ujf/tpG3Uw9PE/BDbIxNE44R5BJGQv0jjQUhjZTX755tOmcqSyU/g4vgqi2d6RmA
GGQpG7T5CjUxe0k8KmYZ/MjzGlCQONCJ0itIRJbwnzZn0yiDSTk=
=DVCE
-----END PGP SIGNATURE-----
----------------------------------------------------------------
Aditya Gupta (10):
ppc/pnv: Move SBE host doorbell function to top of file
ppc/mpipl: Implement S0 SBE interrupt
ppc/pnv: Handle stash command in PowerNV SBE
pnv/mpipl: Preserve memory regions as per MDST/MDDT tables
pnv/mpipl: Preserve CPU registers after crash
pnv/mpipl: Set thread entry size to be allocated by firmware
pnv/mpipl: Write the preserved CPU and MDRT state
pnv/mpipl: Enable MPIPL support
tests/functional: Add test for MPIPL in PowerNV
MAINTAINERS: Add entry for MPIPL (PowerNV)
MAINTAINERS | 8 +
include/hw/ppc/pnv.h | 7 +
include/hw/ppc/pnv_mpipl.h | 168 ++++++++++++
hw/ppc/pnv.c | 98 +++++++
hw/ppc/pnv_mpipl.c | 482 ++++++++++++++++++++++++++++++++++
hw/ppc/pnv_sbe.c | 84 +++++-
hw/ppc/meson.build | 1 +
tests/functional/ppc64/test_fadump.py | 35 +--
8 files changed, 852 insertions(+), 31 deletions(-)
create mode 100644 include/hw/ppc/pnv_mpipl.h
create mode 100644 hw/ppc/pnv_mpipl.c
On Tue, 10 Mar 2026 at 15:15, Harsh Prateek Bora <harshpb@linux.ibm.com> wrote:
>
> The following changes since commit ae56950eac7b61b1abf42003329ee0f3ce111711:
>
> Merge tag 'firmware-20260310-pull-request' of https://gitlab.com/kraxel/qemu into staging (2026-03-10 13:32:30 +0000)
>
> are available in the Git repository at:
>
> https://gitlab.com/harshpb/qemu.git tags/pull-ppc-for-11.0-softfreeze-20260310
>
> for you to fetch changes up to 8d00b61217814fa6809768b8d2ca13167ad4106a:
>
> MAINTAINERS: Add entry for MPIPL (PowerNV) (2026-03-10 20:23:46 +0530)
>
> ----------------------------------------------------------------
> PPC PR for 11.0 soft-freeze
>
> - MPIPL support for PowerNV
>
Hi; this has build failures:
https://gitlab.com/qemu-project/qemu/-/jobs/13431423411
../hw/ppc/pnv_sbe.c:279:29: error: format specifies type 'unsigned
long long' but the argument has type 'ram_addr_t' (aka 'unsigned
long') [-Werror,-Wformat]
277 | qemu_log_mask(LOG_GUEST_ERROR,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
278 | "SBE: skiboot_base 0x%" PRIx64 " exceeds RAM size 0x%" PRIx64 "\n",
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
279 | mbox_val, machine->ram_size);
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~
You need to use RAM_ADDR_FMT for printing ram_addr_t values.
https://gitlab.com/qemu-project/qemu/-/jobs/13431423381
In file included from ../hw/ppc/pnv_lpc.c:28:
In file included from /tmp/cirrus-ci-build/include/hw/ppc/pnv.h:28:
/tmp/cirrus-ci-build/include/hw/ppc/pnv_mpipl.h:54:9: error:
'__packed' macro redefined [-Werror,-Wmacro-redefined]
54 | #define __packed __attribute__((packed))
| ^
/usr/include/sys/cdefs.h:217:9: note: previous definition is here
217 | #define __packed __attribute__((__packed__))
| ^
1 error generated.
This header shouldn't be defining its own private macro
for the packed attribute -- use QEMU_PACKED.
Not a compile error, but I just noticed:
This header should not include osdep.h. The rule is:
* all .c files include osdep.h first
* no .h file includes osdep.h
Also, the fadump test failed on the functional-system-centos
CI job:
https://gitlab.com/qemu-project/qemu/-/jobs/13431423958
AssertionError: 'b'fadump: Reserved '' found in console, expected
'b'fadump: Firmware-assisted dump is active''
thanks
-- PMM
+ Aditya Hi Peter, Is there a way to trigger aarch64-macos-build and x64-freebsd-14-build from Qemu gitlab CI? I had run the CI pipeline with below job and I do not see those tests getting listed/executed: https://gitlab.com/harshpb/qemu/-/pipelines/2375854439 Aditya, Could you please take a look at below listed CI failures and address it? Thanks Harsh On 10/03/26 9:23 pm, Peter Maydell wrote: > On Tue, 10 Mar 2026 at 15:15, Harsh Prateek Bora <harshpb@linux.ibm.com> wrote: >> >> The following changes since commit ae56950eac7b61b1abf42003329ee0f3ce111711: >> >> Merge tag 'firmware-20260310-pull-request' of https://gitlab.com/kraxel/qemu into staging (2026-03-10 13:32:30 +0000) >> >> are available in the Git repository at: >> >> https://gitlab.com/harshpb/qemu.git tags/pull-ppc-for-11.0-softfreeze-20260310 >> >> for you to fetch changes up to 8d00b61217814fa6809768b8d2ca13167ad4106a: >> >> MAINTAINERS: Add entry for MPIPL (PowerNV) (2026-03-10 20:23:46 +0530) >> >> ---------------------------------------------------------------- >> PPC PR for 11.0 soft-freeze >> >> - MPIPL support for PowerNV >> > > Hi; this has build failures: > > https://gitlab.com/qemu-project/qemu/-/jobs/13431423411 > > ../hw/ppc/pnv_sbe.c:279:29: error: format specifies type 'unsigned > long long' but the argument has type 'ram_addr_t' (aka 'unsigned > long') [-Werror,-Wformat] > 277 | qemu_log_mask(LOG_GUEST_ERROR, > | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 278 | "SBE: skiboot_base 0x%" PRIx64 " exceeds RAM size 0x%" PRIx64 "\n", > | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 279 | mbox_val, machine->ram_size); > | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~ > > You need to use RAM_ADDR_FMT for printing ram_addr_t values. > > https://gitlab.com/qemu-project/qemu/-/jobs/13431423381 > > In file included from ../hw/ppc/pnv_lpc.c:28: > In file included from /tmp/cirrus-ci-build/include/hw/ppc/pnv.h:28: > /tmp/cirrus-ci-build/include/hw/ppc/pnv_mpipl.h:54:9: error: > '__packed' macro redefined [-Werror,-Wmacro-redefined] > 54 | #define __packed __attribute__((packed)) > | ^ > /usr/include/sys/cdefs.h:217:9: note: previous definition is here > 217 | #define __packed __attribute__((__packed__)) > | ^ > 1 error generated. > > This header shouldn't be defining its own private macro > for the packed attribute -- use QEMU_PACKED. > > Not a compile error, but I just noticed: > > This header should not include osdep.h. The rule is: > * all .c files include osdep.h first > * no .h file includes osdep.h > > Also, the fadump test failed on the functional-system-centos > CI job: > > https://gitlab.com/qemu-project/qemu/-/jobs/13431423958 > > AssertionError: 'b'fadump: Reserved '' found in console, expected > 'b'fadump: Firmware-assisted dump is active'' > > thanks > -- PMM
Hello Peter, I run the pipeline everytime before sending, curious about the tests I missed. 1. How can I get the console log of the failed centos test ? Or how to (or if I can) run that test on my system ? I did not find the log in the gitlab test's artifacts. Surprised with the failure on the particular centos distro. 2. Is there a way to enable these tests, or to get access to these tests: aarch64-macos-build & x64-freebsd-14-build I read these are run using cirrus ci, can these be run on our systems, if not on gitlab ? Thanks for the suggestions Peter, i have the fixes ready for the next version. Thanks, - Aditya G
On 11/03/2026 07.03, Aditya Gupta wrote: > Hello Peter, > > I run the pipeline everytime before sending, curious about the tests I > missed. > > 1. How can I get the console log of the failed centos test ? Or how to > (or if I can) run that test on my system ? > > I did not find the log in the gitlab test's artifacts. > Surprised with the failure on the particular centos distro. The console log can be found here: https://gitlab.com/qemu-project/qemu/-/jobs/13431423958/artifacts/browse/build/tests/functional/ppc64/test_fadump.QEMUFadump.test_fadump_powernv/ See docs/devel/testing/functional.rst for information on how to run functional tests locally. > 2. Is there a way to enable these tests, or to get access to these > tests: aarch64-macos-build & x64-freebsd-14-build > > I read these are run using cirrus ci, can these be run on our systems, > if not on gitlab ? See .gitlab-ci.d/cirrus/README.rst for information on how to set up the Cirrus-CI for your own cloned repository on gitlab. HTH, Thomas
On 11/03/26 13:23, Thomas Huth wrote: > On 11/03/2026 07.03, Aditya Gupta wrote: >> Hello Peter, >> >> I run the pipeline everytime before sending, curious about the tests I >> missed. >> >> 1. How can I get the console log of the failed centos test ? Or how to >> (or if I can) run that test on my system ? >> >> I did not find the log in the gitlab test's artifacts. >> Surprised with the failure on the particular centos distro. > > The console log can be found here: > > https://gitlab.com/qemu-project/qemu/-/jobs/13431423958/artifacts/browse/build/tests/functional/ppc64/test_fadump.QEMUFadump.test_fadump_powernv/ > > > See docs/devel/testing/functional.rst for information on how to run > functional tests locally. > >> 2. Is there a way to enable these tests, or to get access to these >> tests: aarch64-macos-build & x64-freebsd-14-build >> >> I read these are run using cirrus ci, can these be run on our systems, >> if not on gitlab ? > > See .gitlab-ci.d/cirrus/README.rst for information on how to set up > the Cirrus-CI for your own cloned repository on gitlab. Thank you Thomas ! Will read it. Thanks, - Aditya G > > HTH, > Thomas >
On Tue, 10 Mar 2026 at 16:14, Harsh Prateek Bora <harshpb@linux.ibm.com> wrote: > > + Aditya > > Hi Peter, > > Is there a way to trigger aarch64-macos-build and x64-freebsd-14-build > from Qemu gitlab CI? I had run the CI pipeline with below job and I do > not see those tests getting listed/executed: > > https://gitlab.com/harshpb/qemu/-/pipelines/2375854439 Yeah, some of the CI jobs are not run under user pipelines because they use external/project resources. I think the macos and freebsd ones run via Cirrus. -- PMM
© 2016 - 2026 Red Hat, Inc.