qemu-devel
[Top][All Lists]
Advanced

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

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


From: Andreas Färber
Subject: Re: [Qemu-devel] [PATCH 0/8] spapr: fix IOMMU and XICS/IRQs migration
Date: Thu, 20 Mar 2014 02:25:54 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.3.0

Am 14.03.2014 05:18, schrieb Alexey Kardashevskiy:
> 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? :)

Too big for tonight at least, yeah. :/

Regards,
Andreas

> 
> 
> Alexey Kardashevskiy (8):
>   spapr-iommu: add a bus for spapr-iommu devices
>   xics: add flags for interrupts
>   xics: add find_server
>   xics: add pre_load() hook to ICSStateClass
>   xics: disable flags reset on xics reset
>   spapr: move interrupt allocator to xics
>   spapr: remove @next_irq
>   xics: enable interrupt configuration reset on migration
> 
>  hw/intc/xics.c         | 158 
> +++++++++++++++++++++++++++++++++++++++++++++----
>  hw/intc/xics_kvm.c     |   9 +--
>  hw/ppc/spapr.c         |  73 +----------------------
>  hw/ppc/spapr_events.c  |   2 +-
>  hw/ppc/spapr_iommu.c   |  59 +++++++++++++++++-
>  hw/ppc/spapr_pci.c     |   8 +--
>  hw/ppc/spapr_vio.c     |   4 +-
>  include/hw/ppc/spapr.h |  18 +++---
>  include/hw/ppc/xics.h  |   8 ++-
>  trace-events           |   4 ++
>  10 files changed, 238 insertions(+), 105 deletions(-)
> 


-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



reply via email to

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