[SOLVED] RSDT Address incorrect since QEMU 10

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
Oxmose
Member
Member
Posts: 31
Joined: Sun Dec 18, 2016 5:10 am
Contact:

[SOLVED] RSDT Address incorrect since QEMU 10

Post by Oxmose »

Hello everyone,

I recently updated my Qemu from 9.2 to 10.0.3. Since then when finding the RSDP, the RSDT address contained in the RSDP is incorrect. It point to zeroed memory. The RSDP checksum is valid, the ACPI revision is 0 and the OEM ID is BOCHS.
The physical address of the RSDT is 0xFFE244C but there is nothing there...
My kernel still works correctly on VirtualBox and BOCHS but not Qemu anymore. Do you have any idea of what could cause that?

Thanks!
Last edited by Oxmose on Tue Oct 21, 2025 1:24 pm, edited 1 time in total.
Some of my projects are gathered here: https://github.com/Oxmose
Octocontrabass
Member
Member
Posts: 6247
Joined: Mon Mar 25, 2013 7:01 pm

Re: RSDT Address incorrect since QEMU 10

Post by Octocontrabass »

My first guess would be accidentally overwriting it. Can you find the RSDT if you set a breakpoint somewhere early in the boot process and dump the memory that should contain the RSDT using QEMU's monitor?
Oxmose
Member
Member
Posts: 31
Joined: Sun Dec 18, 2016 5:10 am
Contact:

Re: RSDT Address incorrect since QEMU 10

Post by Oxmose »

Octocontrabass wrote: Mon Oct 20, 2025 10:51 am My first guess would be accidentally overwriting it. Can you find the RSDT if you set a breakpoint somewhere early in the boot process and dump the memory that should contain the RSDT using QEMU's monitor?
Thanks for the advice, I tried to set a breakpoint at the very beginning of my kernel entry point. The memory is already zeroed at that point and the address of the RSDT is still the same. I am wondering if it is not just a Qemu bug because other qemu versions work properly.
Some of my projects are gathered here: https://github.com/Oxmose
Octocontrabass
Member
Member
Posts: 6247
Joined: Mon Mar 25, 2013 7:01 pm

Re: RSDT Address incorrect since QEMU 10

Post by Octocontrabass »

It could still be a bootloader bug (breakpoint at 0x7C00?).

It could be a QEMU bug. This seems like one that would be pretty easy to miss.

It could be an incompatibility between QEMU and your copy of SeaBIOS, if you didn't update both at the same time.
Oxmose
Member
Member
Posts: 31
Joined: Sun Dec 18, 2016 5:10 am
Contact:

Re: RSDT Address incorrect since QEMU 10

Post by Oxmose »

Octocontrabass wrote: Tue Oct 21, 2025 10:19 am It could still be a bootloader bug (breakpoint at 0x7C00?).

It could be a QEMU bug. This seems like one that would be pretty easy to miss.

It could be an incompatibility between QEMU and your copy of SeaBIOS, if you didn't update both at the same time.
I am using Grub as bootloader, I doubt it would be that, but you are right , that could be the source.

Anyway, I got bored of it and recompiled Qemu from source and everything works fine now. I would be inclined to say that your third option was the source of the issue.

Problem solved! Solution was to recompile Qemu, most likely there was an incompatibility in my environment.
Some of my projects are gathered here: https://github.com/Oxmose
Post Reply