On Fri, Oct 02, 2015 at 03:24:24PM -0300, Eduardo Habkost wrote: > On Tue, Sep 22, 2015 at 02:29:01PM +0200, Igor Mammedov wrote: > > On Wed, 16 Sep 2015 17:19:12 +0800 > > Zhu Guihua <zhugh.f...@cn.fujitsu.com> wrote: > > > > > TCG supports per CPU address space, and the emulation quality is > > > a bit better with it. > > > So use per CPU address space to map APIC MMIO area. This allows the > > > APIC base address of each cpu to be moved independent of others. > > > > > > Signed-off-by: Zhu Guihua <zhugh.f...@cn.fujitsu.com> > > > > Reviewed-by: Igor Mammedov <imamm...@redhat.com> > > The series seems to be OK when using KVM, but something is wrong with TCG. > > After applying this patch, my Fedora 20 image hangs on boot at: > > [ OK ] Started udev Coldplug all Devices. > Starting dracut initqueue hook... > [ OK ] Reached target System Initialization. > [ OK ] Reached target Basic System. > [ 8.988420] ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 11 > > > Before this patch, boot continues with: > > [ OK ] Reached target Basic System. > [ 8.523293] ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 11 > [ 9.230955] vda: vda1 > [ OK ] Started dracut initqueue hook. > Mounting /sysroot... > > I am running QEMU as: > $ ./x86_64-softmmu/qemu-system-x86_64 -drive > if=virtio,file=/home/ehabkost/system/vmachines/Fedora-x86_64-20-20131211.1-sda.qcow2,format=qcow2 > -machine pc,accel=tcg -smp 8,sockets=2,threads=2,cores=2,maxcpus=16 -serial > stdio -nographic -monitor none
Debugging revealed that this broke MSI delivery of virtio notifications. Writes to PCIDevice::bus_master_as (at msi_send_message()) don't get delivered to the APIC memory region anymore. This patch doesn't seem to be required for the removal of ICC bus, so I am applying the rest of the series anyway. If you see any problem with that, please let me know. -- Eduardo