Resolve strange IRQ issues which cause the scheduler to behave weirdly (IRQ mapping)
All checks were successful
Build documentation / build-and-deploy (push) Successful in 52s

This commit is contained in:
2026-01-19 01:51:34 +01:00
parent ddafc4eb19
commit 38a43b59b0
9 changed files with 36 additions and 35 deletions

View File

@@ -216,12 +216,12 @@ void irq_save (spin_lock_ctx_t* ctx) { *ctx = amd64_irq_save_flags (); }
void irq_restore (spin_lock_ctx_t* ctx) { amd64_irq_restore_flags (*ctx); }
/* Map custom IRQ mappings to legacy IRQs */
uint8_t amd64_resolve_irq (uint8_t irq) {
static const uint8_t mappings[] = {
uint32_t amd64_resolve_irq (uint32_t irq) {
static const uint32_t mappings[] = {
[SCHED_PREEMPT_TIMER] = 0,
[TLB_SHOOTDOWN] = 1,
[CPU_REQUEST_SCHED] = 2,
[CPU_SPURIOUS] = 3,
[TLB_SHOOTDOWN] = 6,
[CPU_REQUEST_SCHED] = 3,
[CPU_SPURIOUS] = 5,
};
return mappings[irq];