I applied it but moved the #ifndef APIC to inside restore_IRQ, to restore raising spl back to high, as the rest of the initialization code expects.
Damien Zammit, le ven. 03 févr. 2023 10:01:55 +0000, a ecrit: > --- > linux/dev/arch/i386/kernel/irq.c | 2 +- > linux/dev/init/main.c | 2 ++ > 2 files changed, 3 insertions(+), 1 deletion(-) > > diff --git a/linux/dev/arch/i386/kernel/irq.c > b/linux/dev/arch/i386/kernel/irq.c > index 67feea84..b48d1312 100644 > --- a/linux/dev/arch/i386/kernel/irq.c > +++ b/linux/dev/arch/i386/kernel/irq.c > @@ -721,13 +721,13 @@ init_IRQ (void) > outb_p (PIT_C0 | PIT_SQUAREMODE | PIT_READMODE, PITCTL_PORT); > outb_p (latch & 0xff, PITCTR0_PORT); > outb (latch >> 8, PITCTR0_PORT); > -#endif > > /* > * Install our clock interrupt handler. > */ > old_clock_handler = ivect[0]; > ivect[0] = linux_timer_intr; > +#endif > > reserve_mach_irqs (); > > diff --git a/linux/dev/init/main.c b/linux/dev/init/main.c > index 6d853957..207724f3 100644 > --- a/linux/dev/init/main.c > +++ b/linux/dev/init/main.c > @@ -160,7 +160,9 @@ linux_init (void) > pcmcia_init (); > #endif > > +#ifndef APIC > restore_IRQ (); > +#endif > > linux_auto_config = 0; > } > -- > 2.34.1
