• D
    conf: move virt type / os type / arch validation to post-parse · 2578d74a
    Daniel P. Berrangé 提交于
    The XML parser currently calls virCapabilitiesDomainDataLookup during
    parsing to find the domain capabilities matching the triple
    
      (virt type, os type, arch)
    
    This is, however, bogus with the QEMU driver as it assumes that there
    is an emulator known to the default driver capabilities that matches
    this triple. It is entirely possible for the driver to be parsing an
    XML file with a custom emulator path specified pointing to a binary
    that doesn't exist in the default driver capabilities.  This will,
    for example be the case on a RHEL host which only installs the host
    native emulator to /usr/bin. The user can have built a custom QEMU
    for non-native arches into $HOME and wish to use that.
    
    Aside from validation, this call is also used to fill in a machine type
    for the guest if not otherwise specified. Again, this data may be
    incorrect for the QEMU driver because it is not taking account of
    the emulator binary that is referenced.
    
    To start fixing this, move the validation to the post-parse callbacks
    where more intelligent driver specific logic can be applied.
    Reviewed-by: NMichal Privoznik <mprivozn@redhat.com>
    Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
    2578d74a
libvirt_private.syms 79.1 KB