PPC and 2026 so far

Adrian Chadd <[email protected]> Wed, 27 May 2026 16:04:40 -0700
Newsgroups gmane.os.freebsd.devel.ppc
Message-ID <CAJ-VmokEN0VATEdakb6fd7X06XBttVFAk-sqLLL0zgvBx6m6Zg@mail.gmail.com>
hi!

We've been a bit busy in ppc64 land this year!

I'm tempted to poke ppc32 but that's a whole other discussion for
later, so don't ask why this is ppc64 focused!

* Ivy, Justin and I have been shaking out issues with pseries VMs. p7,
p8 and p9 pseries VMs seem quite stable now.
* Justin's been working on the dpaa driver and SMP support on the
MPC85xx support (and we had to do a fun dance to make his SMP stuff
work /and/ existing powermac stuff thanks to IBM not fully
implementing the openPIC stuff. Heh.)
* Justin fixed the spapr virtual NIC driver so both the legacy device
based and the virtio device based pseries VMs work fine.
* I think Ivy has a diff up for a reboot handler so the hypervisor
reboot request can do the right thing.
* A bunch of the weird booting and SMP issues for G5 powermac have
been fixed, so single and dual G5 powerpc64 installs should work fine
again!
* I figured out a workaround for the P8/P9 powernv/kexec-lite bug - I
don't know if it belongs in the base or a port, but Ivy and I are
talking about how to automate it for pkgbase installs so we can
install on the buggy firmware on IBM P8/P9 powerNV setups.
* We've got a power9 box at osuosl.org (oregon state university power
lab) up and going running FreeBSD natively on powerNV and we're stress
testing it and sorting out some initial package build things.
* I've been working on powerpc busdma cleanups to help Tim at Raptor
Engineering get ready for actual IOMMU support - needed for both
memory map reasons but also it'll lay the groundwork for FreeBSD
powerpc virtualisation on the supported POWER hardware.
* Ivy has been working on a bunch of powerpc package building things,
CI related things and been poking at bootloader stage things.

A few people have come out of the woodwork with P7, P8 and P9
hardware, both native, virtualised and powerVM. To Manis, chuck, Tim @
raptor, Lance @ OSU and others I say thank you for everything so far
and I'm glad y'all are here!

I'm sure I've missed some stuff, it's been a busy 5 months in 2026. As
such, I think we're in a pretty good space now - we can run native on
a bunch of hardware, the pseries VM support for both big and little
endian is working (save a recent virtio regression/bug in big-endian
that is being worked on, but we have a workaround!) and I think we're
in pretty good shape.

There are a few things that are on my "what the heck" list:

* loading zfs as a kernel module once the kernel is loaded causes the
kernel to panic and we have not figured out why. It's fine if it's
loaded by the loader at load time (eg in a pseries VM). But if you
load it at run time (eg natively booting on a powerNV setup via
/etc/rc.conf) then it doesn't work. I'd love to get that fixed.

* There's a performance gap between Linux and FreeBSD and none of us
yet know why. It could be CPU/thread configuration, it could be page
mapping/VM, it could be CPU frequency management, heck it could be our
scheduler and how it works with threads versus cores. It's there and
it would be great to deep dive into it.

* I've started poking at why we don't boot in a PowerVM partition - I
don't even think our bootloader is being /loaded/, let along run.

I'm hoping that during the next few months of 2026 we'll nail down
package building for big/little endian across 14.x, 15.x and 16.x and
flesh out missing/more pseries VM support. I don't expect we're going
to be anywhere near on par with packages as x86/arm64 just purely due
to some things not running on powerpc (eg browsers are still a bit
funny) but having

If anyone's interested in helping out with any of the powerpc related
stuff, whether it's powermac, ps3 or bigiron POWER series stuff,
please reach out and let us know.



-adrian