aboutsummaryrefslogtreecommitdiff
path: root/kern/debug.c
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2023-08-10 19:18:43 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2023-08-10 19:25:04 +0200
commit362c84a08a1b8f1eb7f9c1c37c6ed7cece348ee4 (patch)
treef9fd181c21759c63b19b8a33fb8b928fbb368195 /kern/debug.c
parentd2a853126d4b017d5029e2adbdcb844542fb7d7a (diff)
downloadgnumach-362c84a08a1b8f1eb7f9c1c37c6ed7cece348ee4.tar.gz
gnumach-362c84a08a1b8f1eb7f9c1c37c6ed7cece348ee4.tar.bz2
gnumach-362c84a08a1b8f1eb7f9c1c37c6ed7cece348ee4.zip
Acknowledge IRQ *before* calling the handler
5da1aea7ab3c ("Acknoledge interrupt after handler call") moved the IRQ ack to after calling the handler because of overflows. But that was because the interrupts were getting enabled at some point. Now that all spl levels above 0 just disable interrupts, once we have called spl7 we are safe until splx_cli is called (and even that doesn't release interrupts, only the eventual iret will). And if the handler triggers another IRQ, it will be lost, so we do want to ack the IRQ before handling it.
Diffstat (limited to 'kern/debug.c')
0 files changed, 0 insertions, 0 deletions