[libvirt] [PATCH v2 3/7] qemu: detect arch correctly for KVM

Jiri Denemark jdenemar at redhat.com
Fri Jan 27 14:29:03 UTC 2012


On Fri, Jan 27, 2012 at 14:49:48 +0100, Paolo Bonzini wrote:
> When running under KVM, the arch is usually set to i686 because
> the name of the emulator is not qemu-system-x86_64.  Use the host
> arch instead.
> 
> Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
> ---
>  src/qemu/qemu_command.c |    6 ++++--
>  1 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
> index 1e3e8ef..fc337f7 100644
> --- a/src/qemu/qemu_command.c
> +++ b/src/qemu/qemu_command.c
> @@ -7003,8 +7003,10 @@ virDomainDefPtr qemuParseCommandLine(virCapsPtr caps,
>          path = def->emulator;
>      else
>          path = strstr(def->emulator, "qemu");
> -    if (path &&
> -        STRPREFIX(path, "qemu-system-"))
> +    if (def->virtType == VIR_DOMAIN_VIRT_KVM)
> +        def->os.arch = strdup(caps->host.cpu->arch);
> +    else if (path &&
> +             STRPREFIX(path, "qemu-system-"))
>          def->os.arch = strdup(path + strlen("qemu-system-"));
>      else
>          def->os.arch = strdup("i686");

Makes sense. ACK

Jirka




More information about the libvir-list mailing list