On 8/1/25 5:43 AM, Mohamed Mediouni wrote:
On 1. Aug 2025, at 03:15, Pierrick Bouvier <pierrick.bouv...@linaro.org> wrote:
Hi Mohamed,
On 7/30/25 10:27 PM, Mohamed Mediouni wrote:
This one took way longer for me to publish than I should have.
There are a number of lingering bugs in this one including u-boot not working.
Interrupt controller save/restore is entirely missing in this RFC, and some
other state
bits are likely still missing too.
ITS not blocked by default yet, remember to use its=off when testing this
series.
You might also want the GICv3 + GICv2m support patch as part of the HVF vGIC
patch series, which
is not duplicated here.
PS: on both this and HVF, interrupt controller initialisation needs to be done
early so I ended
up with hardcoded addresses. Wonder if the right way to go might be to defer
virt and vCPU initialisation
until late in the process post-gic_realize...
Other than that, this boots both EDK2 and Linux in SMP, when using devicetree
or ACPI.
thanks for posting this, that's an exciting series!
I applied it on top of your other series
(20250728134114.77545-1-moha...@unpredictable.fr) and solved the conflicts.
However, it would really help if you could push that exact branch somewhere, so
people can easily pull it and try.
I'm fine if you want to duplicate gic patches in this series as well.
Hello,
My branches are at https://github.com/mediouni-m/qemu
Thanks, it's worth adding it in cover letter for next versions.
whpx-v1 corresponding to this RFC, but latest rev of the whpx branch has some
fixes
Have some additional notes and binaries here too:
https://github.com/mediouni-m/qemu/releases/tag/whpx-v1.1
Thank you,
-Mohamed
I tried to direct boot a kernel (6.15 defconfig) and ran into this error [1]:
$ ./build/qemu-system-aarch64.exe -M virt,its=off -cpu cortex-a76 -m 2G
-nographic -accel whpx -kernel out/Image.gz out/host.ext4
Syntax that I use is -M virt,accel=whpx,its=off -m 2048-cpu cortex-a72 -bios
share/edk2-aarch64-code.fd.
And on some kernel versions, you’ll also need irqchip.gicv3_nolpi=1.
Could you please share your exact command line?
Does it work with direct kernel boot also?
Kind Regards,
Pierrick
[1] Error when booting:
[ 1.381525] Internal error: Oops: 0000000096000002 [#1] SMP
[ 1.458060] Modules linked in:
[ 1.461172] CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted
6.15.0-00001-g7797e43a2520 #1 PREEMPT
[ 1.470502] Hardware name: linux,dummy-virt (DT)
[ 1.475102] pstate: 204000c5 (nzCv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 1.482023] pc : pci_generic_config_read+0x38/0xb8
[ 1.486970] lr : pci_generic_config_read+0x24/0xb8
I don’t think I saw this particular one before… which Windows version and
hardware are you testing this on?
I see the same error as before.
I tried also binaries from
https://github.com/mediouni-m/qemu/releases/tag/whpx-v1.1, when directly
booting kernel, I still see the same pci issue with both binaries and my
compiled whpx-v1.3.
When booting edk2 provided, I ran into this other error instead with
both binaries [1].
I'm running latest Windows 11 (stable channel, fully updated), on a
microsoft volterra (devkit). It might be an issue specific to this platform.
In case you're interested, we can arrange an access to the machine, but
I understand if it's not your priority now.
[1]
Windows Hypervisor Platform accelerator is operational
UEFI firmware (version edk2-stable202408-prebuilt.qemu.org built at
16:28:50 on Sep 12 2024)
ArmTrngLib could not be correctly initialized.
Error: Image at 000BFDB6000 start failed: 00000001
Error: Image at 000BFD6D000 start failed: Not Found
MapGcdMmioSpace: failed to add GCD memory space for region
[0x4010000000+0x10000000)
ASSERT_EFI_ERROR (Status = Unsupported)
ASSERT [PciHostBridgeDxe]
/home/kraxel/projects/qemu/roms/edk2/OvmfPkg/Fdt/FdtPciHostBridgeLib/FdtPciHostBridgeLib.c(326):
!(((INTN)(RETURN_STATUS)(Status)) < 0)
(Message was sent from the wrong email alias on mobile, resending)
Thank you,
-Mohamed
Thanks,
Pierrick