kernel: Interrupts are disabled while in system calls #32
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
In x86_64's IDT.cpp, IDT_TA_TrapGate and IDT_TA_InterruptGate are used wrongly. Interrupt gates are called with interrupts disabled, trap gates are not. Thus, syscalls should have a new IDT_TA_UserCallableTrapGate value. IRQs should probably be configurable. Exceptions should stay this way (interrupts enabled on entry, as per the OSDev wiki.
kernel: Interrupts are disabled while in system calls and enabled in exceptionsto kernel: Interrupts are disabled while in system callsI'm pretty sure this is intended behaviour.