KVM-PR no longer works when compiled with new GCC compilers

Christian Zigotzky
2026-04-23T16:56:51Z

On 02/10/25 08:37, Christian Zigotzky wrote:
> Hello,
>
> KVM-PR (-enable-kvm) doesn't work anymore on our PA Semi Nemo boards
> [1] if we compiled it with new GCC compilers.
> The VM can't boot. There aren't any messages on the serial console of
> QEMU.
>
> It boots without KVM-PR.
>
> Kernel config with new GCC compiler [2]:
>
> - CONFIG_CC_VERSION_TEXT="powerpc64-suse-linux-gcc (SUSE Linux) 11.5.0"
> - CONFIG_TARGET_CPU="power4"
> - CONFIG_TUNE_CPU="-mtune=power10"
>
> It works if I compile it with an old GCC compiler [3]:
>
> - CONFIG_CC_VERSION_TEXT="powerpc-linux-gnu-gcc (Ubuntu
> 9.4.0-1ubuntu1~20.04.1) 9.4.0"
> - CONFIG_TARGET_CPU="power4"
> - CONFIG_TUNE_CPU="-mtune=power9"
>
> Mtune changes to power9 automatically if I compiled it with an old GCC
> compiler. If I compile it with a new GCC compiler again it changes
> automatically to mtune=power10.
>
> Is mtune the reason of the KVM-PR issue? I think the issue is the new
> GCC. [4]
>
> Could you please check whether KVM-PR is compatible with new versions
> of GCC compilers?
>
> Thanks in advance,
>
> Christian
>
>
>
> [1] https://en.wikipedia.org/wiki/AmigaOne_X1000
>
> [2]
> https://github.com/chzigotzky/kernels/blob/45186997e6f347fd092f9ab629d62d6041426227/configs/x1000_defconfig
>
> [3]
> https://github.com/chzigotzky/kernels/blob/bc7a3e27b3fcdee52a8135435f02cf807a43872a/configs/x1000_defconfig
>
> [4] KVM-PR no longer works on an X1000 if the kernel has been compiled
> with a new GCC:
> https://forum.hyperion-entertainment.com/viewtopic.php?p=57146#p57146
>
Error messages (kvm-pr compiled with powerpc64-linux-gnu-gcc 14.1.1
20240507 Red Hat Cross 14.1.1-1, GNU ld version 2.41-2.el10_0):

[  800.274759] Couldn't emulate instruction 0x00000000 (op 0 xop 0)
[  800.274767] kvmppc_exit_pr_progint: emulation at 100 failed (00000000)

--
Sent with BrassMonkey 34.1.0 (https://github.com/chzigotzky/Web-Browsers-and-Suites-for-Linux-PPC/releases/tag/BrassMonkey_34.1.0)