> On 1. Aug 2025, at 21:16, Pierrick Bouvier <pierrick.bouv...@linaro.org>
> wrote:
>
> On 8/1/25 11:52 AM, Mohamed Mediouni wrote:
>>> On 1. Aug 2025, at 19:22, Pierrick Bouvier <pierrick.bouv...@linaro.org>
>>> wrote:
>>>
>>> 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.
>>>
>> I didn’t test anything on the stable branch for now but only on Canary so
>> far.
>> Just cursorily tested (EDK2 only) an X Elite device on prod (26100.4652) and
>> this issue doesn’t appear.
>> I have 8cx Gen 3 and 8cx Gen 1 (SQ1) devices around, will test on those
>> older SoCs later and see.
>> Random idea for testing: what if you put -M highmem=off, does that change
>> anything?
>>
>
> Good guess, it solves the problem with edk2, and direct boots linux kernel
> successfully now.
>
If you don’t mind, could you please test the latest commit I just put on the
Git repo (whpx branch)? It should address this properly.
Thank you,
-Mohamed