90acbc7 qemu_domain: use correct default USB controller on ppc64

Authored and Committed by phrdina 7 years ago
    qemu_domain: use correct default USB controller on ppc64
    
    The history of USB controller for ppc64 guest is complex and goes
    back to libvirt 1.3.1 where the fun started.
    
    Prior Libvirt 1.3.1 if no model for USB controller was specified
    we've simply passed "-usb" on QEMU command line.
    
    Since Libvirt 1.3.1 there is a patch (8156493d8db) that fixes this
    issue by using "-device pci-ohci,..." but it breaks migration with
    older Libvirts which was agreed that's acceptable.  However this
    patch didn't reflect this change in the domain XML and the model
    was still missing.
    
    Since Libvirt 2.2.0 there is a patch (f55eaccb0c5) that fixes the
    issue with not setting the USB model into domain XML which we need
    to know about to not break the migration and since the default
    model was *pci-ohci* it was used as default in this patch as well.
    
    This patch tries to take all the previous changes into account and
    also change the default for newly defined domains that don't specify
    any model for USB controller.
    
    The VIR_DOMAIN_DEF_PARSE_ABI_UPDATE is set only if new domain is
    defined or new device is added into a domain which means that in
    all other cases we will use the old *pci-ohci* model instead of the
    better and not broken *nec-usb-xhci* model.
    
    Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1373184
    
    Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
    
        
file modified
+12 -4