getting crashes when I press a lot of keys. processes with weird stacks too (e.g. a userspace process with sp set to an empty kernel stack), so I suspect either stack overflows or bad returns from kernel mode

from the debug output, a crash always seems to happen right after an interrupt in kernel mode (this can happen when allocating memory and it needs to swap in more pages)

Follow

a nested interrupt will overwrite the saved registers, so I should probably stash those somewhere when there may be nested interrupts!

· · Web · 1 · 0 · 1

(because the kernel typically allocates blocks of about 32 bytes long, and swapping happens once every 4096 bytes. so each allocation has less than 1% chance of triggering a nested exception, and perhaps not all of those cause issues. and most kernel allocation happens before userspace code runs so there are no exception registers to mess up.)

oh i am a silly goose. nested interrupts will use the same object stack, overwriting the outer interrupt's object stack

Sign in to participate in the conversation
Vachtnoes

Mastodon is a server for a federated social network: everyone can run a server if they want to, including me. So this is a Mastodon server for me (Vierkantor) and my friends.