On 08/22/2010 03:33 PM, Avi Kivity wrote:
 On 08/22/2010 11:03 PM, Anthony Liguori wrote:
On 08/22/2010 02:44 PM, Avi Kivity wrote:
No more MI diamond and all devices have DeviceStates. Coincidentally, it matches more closely how hardware works..



Well, I agree, but I honestly lost the context. How does this relate to the APIC and cpu hotplug?

My original assertion was that the local APIC is not a DeviceState, but rather it's a CPU feature.

If you look at some of the magic that apic.c has to do in the IO callbacks, it should be clear that it's special.

It's special in that it is connected to a cpu core. So's the RTL8139 device, on one hand connected to a PCI bus, on the other hand connected to a PHY (netdev in qemu).

In the not too distant future, I'd like to move apic.c to target-i386. There should be no need to explicitly instantiate it when you instantiate a CPU.

But then there's a need explicitly not to instantiate it when using -isapc.

No.  isapc has nothing to do with whether a CPU has a local APIC.

You don't instantiate the local APIC if you create a 486 CPU. If you create an isapc with a pentium processor, it's going to have a local APIC although it's irrelevant as it's fully compatible with the 486.

Regards,

Anthony Liguori


Reply via email to