Make keyboard lock-free (and fix Doom deadlock) by only pushing

scancodes to a spsc queue from the interrupts and only process them
inside syscalls. Also make CURRENT_PID atomic to use less locking
This commit is contained in:
csd4ni3l
2026-04-19 18:22:16 +02:00
parent 2b8a965c92
commit f4c2657b94
11 changed files with 218 additions and 131 deletions

View File

@@ -10,11 +10,13 @@ bench = false
[dependencies]
font8x8 = { version = "0.3.1", default-features = false }
heapless = "0.9.2"
lazy_static = { version = "1.5.0", features = ["spin_no_std"] }
limine = "0.5"
pc-keyboard = "0.8.0"
pic8259 = "0.11.0"
spin = "0.10.0"
static_cell = "2.1.1"
[target.'cfg(target_arch = "x86_64")'.dependencies]
x86_64 = "0.15.4"