fix: kernel concurrency, interrupt context, and user VA safety
This commit is contained in:
1 parent
f222bf1f04
commit
b1c55073c7
71 files changed
+2654
-1092
No files matched your search
@@ -150,7 +150,7 @@ namespace Drivers::PS2::Keyboard {
|
||||
Kt::KernelLogStream(Kt::OK, "PS2/KB") << "Keyboard driver initialized";
|
||||
}
|
||||
|
||||
void HandleIRQ(uint8_t irq) {
|
||||
void HandleIRQ(uint8_t irq, bool) {
|
||||
(void)irq;
|
||||
uint8_t scancode = Io::In8(DataPort);
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ namespace Drivers::PS2::Keyboard {
|
||||
void Initialize();
|
||||
|
||||
// Interrupt handler -- called from IRQ dispatch (EOI is sent automatically)
|
||||
void HandleIRQ(uint8_t irq);
|
||||
void HandleIRQ(uint8_t irq, bool fromUser);
|
||||
|
||||
// Public interface for consuming key events
|
||||
bool IsKeyAvailable();
|
||||
@@ -52,4 +52,4 @@ namespace Drivers::PS2::Keyboard {
|
||||
// Inject a key event from an external source (e.g., USB HID keyboard)
|
||||
void InjectKeyEvent(const KeyEvent& event);
|
||||
|
||||
};
|
||||
};
|
||||
@@ -109,7 +109,7 @@ namespace Drivers::PS2::Mouse {
|
||||
Kt::KernelLogStream(Kt::OK, "PS2/Mouse") << "Mouse driver initialized";
|
||||
}
|
||||
|
||||
void HandleIRQ(uint8_t irq) {
|
||||
void HandleIRQ(uint8_t irq, bool) {
|
||||
(void)irq;
|
||||
uint8_t data = Io::In8(DataPort);
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ namespace Drivers::PS2::Mouse {
|
||||
void Initialize();
|
||||
|
||||
// Interrupt handler -- called from IRQ dispatch (EOI is sent automatically)
|
||||
void HandleIRQ(uint8_t irq);
|
||||
void HandleIRQ(uint8_t irq, bool fromUser);
|
||||
|
||||
// Public interface
|
||||
MouseState GetMouseState();
|
||||
@@ -42,4 +42,4 @@ namespace Drivers::PS2::Mouse {
|
||||
// Inject a mouse report from an external source (e.g., USB HID mouse)
|
||||
void InjectMouseReport(uint8_t buttons, int8_t deltaX, int8_t deltaY, int8_t scroll);
|
||||
|
||||
};
|
||||
};
|
||||
Reference in new issue
Block a user