qemu-ppc
[Top][All Lists]
Advanced

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

Re: [Qemu-ppc] [PATCH 0/8] spapr: fix IOMMU and XICS/IRQs migration


From: Paolo Bonzini
Subject: Re: [Qemu-ppc] [PATCH 0/8] spapr: fix IOMMU and XICS/IRQs migration
Date: Sun, 04 May 2014 23:52:19 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0

Il 04/05/2014 15:56, Alexey Kardashevskiy ha scritto:
On 03/14/2014 03:18 PM, Alexey Kardashevskiy wrote:
This initial problem came form libvirt - it does not preserve
the device order when running QEMU. So it is easy to get source QEMU with:
-device spapr-vscsi,id=scsi1,reg=0x2000 -device spapr-vscsi,id=scsi0,reg=0x3000
and destination QEMU with:
-device spapr-vscsi,id=scsi0,reg=0x3000 -device spapr-vscsi,id=scsi1,reg=0x2000

Since SPAPR IOMMU device does not have a bus, it is identified in
the migration stream as "spapr-iommu" and @instance_id which is assigned
as IOMMUs are created. This results in broken migration as @reg does not match.
The first patch fixes this issue by adding a bus device and a bridge.

However just 1/8 does not fix the migration as device creation order also
affects IRQs assigned to the devices, for both PCI and VIO.
2/7..8/8 fix that by moving XICS IRQ management from SPAPR to XICS and
implementing migration support for the entire XICS IRQ map.

As we are here, the patchset also prepares XICS to support multiple ICS
(interrupt servers).

This is a bugfix patchset but it feels too big to go to 2.0, right? :)


I understand that the first and last patches of the series are wrong but I
would still like others to get in upstream. How to proceed now? Repost them
all again? Thanks.

You are working around a libvirt problem caused by a missing QEMU feature.

At least patch 4 is probably unnecessary too. 2/3/5/6/7 (aka what's left) seem sane and likely to remain useful in order to implement the QEMU feature correctly.

Paolo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]