-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Double Fault in Interrupts post in latest nightly #1297
Comments
Some observations:
|
It looks like the issue is that the As a result, the PIC initialization fails, which cause the double fault once interrupts are enabled. Re-initializing the PIC at runtime before initialization seems to fix the issue: let mut pics = interrupts::PICS.lock();
*pics =
unsafe { pic8259::ChainedPics::new(interrupts::PIC_1_OFFSET, interrupts::PIC_2_OFFSET) };
unsafe { pics.initialize() }; So the issue seems to be the loading of the |
I found the issue and fixed it in rust-osdev/bootloader#424. If you're affected by this, run |
I change the older nightly version but still got this problems.
I use the WSL2 in the ubuntu 22.04 in x86 computer. |
Sorry, it turn out that i keep |
There is a weird double fault bug when running the
post-07
branch (or newer) on the latest Rust nightly:I don't know the cause of this issue yet, but it seems related to the recent LLVM 18. I recommend to use an older nightly until we figured this out. You can do that by running these commands:
Then everything should work again.
(To remove the override later, run
rustup override unset
.)The text was updated successfully, but these errors were encountered: