diff options
author | Damien Zammit <damien@zamaudio.com> | 2023-02-14 00:06:54 +0100 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2023-02-14 00:06:54 +0100 |
commit | 544071f200124fafd4fe7628c54f124e8577ca82 (patch) | |
tree | f0e0ef8a706126c3d6a65e21ee3f5dcd40759e26 /i386/i386at/ioapic.c | |
parent | f9ebee5589f8056ef52c6ecfdf7d6e10f4d34d1c (diff) | |
download | gnumach-544071f200124fafd4fe7628c54f124e8577ca82.tar.gz gnumach-544071f200124fafd4fe7628c54f124e8577ca82.tar.bz2 gnumach-544071f200124fafd4fe7628c54f124e8577ca82.zip |
Make curr_ipl[] per cpu
Diffstat (limited to 'i386/i386at/ioapic.c')
-rw-r--r-- | i386/i386at/ioapic.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/i386/i386at/ioapic.c b/i386/i386at/ioapic.c index f7b0d1d3..24e04653 100644 --- a/i386/i386at/ioapic.c +++ b/i386/i386at/ioapic.c @@ -37,7 +37,7 @@ int duplicate_pin; uint32_t lapic_timer_val = 0; uint32_t calibrated_ticks = 0; -spl_t curr_ipl; +spl_t curr_ipl[NCPUS] = {0}; int iunit[NINTR] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23}; @@ -76,8 +76,11 @@ interrupt_handler_fn ivect[NINTR] = { void picdisable(void) { + int i; + asm("cli"); - curr_ipl = SPLHI; + for (i = 0; i < NCPUS; i++) + curr_ipl[i] = SPLHI; /* ** Disable PIC |