Re: nmi is broken?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Avi Kivity <avi@xxxxxxxxxx> writes:

>> >>  The issue with live migration is that we can't change the running
>> >>  configuration while the system is running, like adding the IMCR or
>> >>  changing the wiring.  The hardware will be programmed for the old
>> >>  configuration and will likely fail with the new one.  For example, the
>> >>  current wiring has the PIT output wired to PIC IRQ0 and IOAPIC INTI0;
>> >>  we need to change it to IOAPIC INTI2 instead.
>> >>
>> >
>> >  btw, I believe that the configuration currently implemented is legal
>> >  (it's similar to config 7 in table 5-2 of the mpspec); the only problem
>> >  is that it can't support the NMI watchdog through the I/O APIC trick,
>> >  yet we allow it through a hack.
>>
>> I'm confused a bit. "config 7 in table 5-2" says PIT output wired to
>> IOAPIC INTIN2. So, we don't need to change it?
>
> We're like config 7 in that the 8259A output isn't wired to the IOAPIC.  
> However we're unlike config 7 in that the PIT output is wired to IOAPIC 
> INTIN0.  I think we can keep it that way.
>
>> >  Something we can do is connect the 8259A output to the I/O APIC INTIN2;
>> >  it should be masked so live migration will continue to work.  We just
>> >  have to make sure that the guest is able to find that it is
>> > connected there.
>>
>> 8259A INTR to IOAPIC INTIN2 sounds strange. Isn't it IOAPIC INTIN0?
>
> Usually yes, but we already have the PIT wired to INTIN0.  I saw that 
> the kernel consults the mptable to see which pin to use, so with the 
> right BIOS magic we can get things to work.

Um..., I'm confused more. If so, MADT doesn't say it. MADT says irq == 0
is pin == 2, this is one of reasons why linux is quite silent in
check_timer(). And I can't see why it is working by pin == 2 for IOAPIC.

If I can make time, I'll see what happens by pin == 2 and pin == 0 of
IOAPIC in kvm.

Thanks.
-- 
OGAWA Hirofumi <hirofumi@xxxxxxxxxxxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux