On Sat, 18 Jan 2003 19:32:06 -0500, Jim Houston <[EMAIL PROTECTED]> wrote: >I have been spending too much time reading IA32 System Programming Guide: > > http://www.intel.com/design/pentium4/manuals/245472.htm > >in particular section 8.8.5. I believe that kdb may be doing >interrupt acknowledge writes to the EOI register which are not >needed. It is using NMI delivery, and section 8.8.5 says that >the EOI write should not be done for NMI interrupts.
That explicit restriction was not in 24319202.pdf, although it was implied. >I have never seen any problems, but it seems that kdb >could be acknowledging random interrupts which don't belong to >it. > >I tried taking the ack_APIC_irq() out of do_ack_apic_irq(), and >kdb works correctly. Thanks for the info. I am redesigning the kdb ipi code to try normal interrupts first, then nmi if there is no response, so ack_APIC_irq() will still be need in some cases. kdb v3.0 will still call ack_APIC_irq, even for nmi, the next major version will handle nmi differently.
