Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kernel: Running with >= 4G RAM causes panic when using SeaBIOS 1.16.3 #22720

Closed
Tracked by #22865
spholz opened this issue Jan 12, 2024 · 0 comments · Fixed by #24279
Closed
Tracked by #22865

Kernel: Running with >= 4G RAM causes panic when using SeaBIOS 1.16.3 #22720

spholz opened this issue Jan 12, 2024 · 0 comments · Fixed by #24279
Labels
bug Something isn't working regression

Comments

@spholz
Copy link
Contributor

spholz commented Jan 12, 2024

We currently don't really support physical MMIO memory above 4G.
This is because we check that all physical page indices are below m_physical_page_entries_count in MemoryManager::get_physical_page_entry(), this variable gets set to the highest physical address in the multiboot memory map.
We have this limit as we currently store info about all physical pages into a contiguous array called m_physical_page_entries.

SeaBIOS started using BAR values above 4G when >= 4GB RAM is available, this will cause us to panic, as we currently rely on BIOS-provided BAR values.

Note: We panic at a different place until #22710 is merged, because we currently truncate 64 bit BARs to 32 bit by accident.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working regression
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants