qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Richard W.M. Jones" <rjones@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: QEMU Developers <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] aarch64 & gdb: warning: while parsing target description (at line 1): Could not load XML document "arm-core.xml"
Date: Thu, 7 Aug 2014 12:43:03 +0100	[thread overview]
Message-ID: <20140807114303.GM1302@redhat.com> (raw)
In-Reply-To: <CAFEAcA-Ebgt2bM1t8BDCv6oHHyb_zt_4erdHQwvdjGEV3_G=1g@mail.gmail.com>

On Thu, Aug 07, 2014 at 12:35:27PM +0100, Peter Maydell wrote:
> On 7 August 2014 12:29, Richard W.M. Jones <rjones@redhat.com> wrote:
> > On Thu, Aug 07, 2014 at 12:18:49PM +0100, Peter Maydell wrote:
> >> you didn't select a 32 bit CPU either explicitly or by default
> >> on the QEMU command line? Note that '-machine type=virt'
> >> defaults to a Cortex-A15 even in qemu-softmmu-aarch64
> >> (this is unfortunate but fallout from the fact that we started
> >> the virt model with the A15. Maybe we should make it not
> >> have a default and require a CPU specification...)
> >
> > Yes, this is indeed the case.  It also explains why I could get TCG
> > working at all until I added -cpu cortex-a57.  Now it is working.
> >
> > I really think this choice of cpu_model = "cortex-a15" for -M virt is
> > a poor one.  It should always default to something working.
> 
> cortex-a15 *does* work, it's just a 32 bit CPU. It will function
> exactly the same as if you asked for an A15 in qemu-system-arm.
> Obviously if you try to feed it an AArch64 kernel it will behave
> the same way as if you'd tried to boot an AArch64 kernel on
> A15 hardware, so don't do that.

Can't a 32 bit kernel run on -cpu cortex-a5x?  (I've not tried.)

> > Currently libguestfs has to pass -cpu host when KVM is detected, and
> > -cpu cortex-a57 otherwise.  However we cannot be sure that KVM is 100%
> > working and that we won't fall back to TCG, which means the -cpu
> > parameter could be wrong and we would fail to launch the appliance.
> > Having the correct defaults would prevent this unnecessary failure.
> 
> This isn't possible, I'm afraid. TCG will never support "-cpu host",
> and whether any particular specific CPU type is supported by
> the kernel for KVM depends on the host hardware. (We don't
> want to default to "-cpu host if KVM" because it means defaulting
> to "migration won't work".)

We use -cpu host on KVM in order to avoid parsing /proc/cpuinfo to
find the right CPU model and flags.  Parsing /proc/cpuinfo is a
minefield because it differs on every architecture, and even within
architectures.

Note libguestfs doesn't care about migration at all.  We do care that
we can reliably run our appliance.

What we really want is -cpu best-possible-and-don't-fail.

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
libguestfs lets you edit virtual machines.  Supports shell scripting,
bindings from many languages.  http://libguestfs.org

  reply	other threads:[~2014-08-07 11:43 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-07 10:42 [Qemu-devel] aarch64 & gdb: warning: while parsing target description (at line 1): Could not load XML document "arm-core.xml" Richard W.M. Jones
2014-08-07 11:18 ` Peter Maydell
2014-08-07 11:29   ` Richard W.M. Jones
2014-08-07 11:35     ` Peter Maydell
2014-08-07 11:43       ` Richard W.M. Jones [this message]
2014-08-07 12:03         ` Peter Maydell
2014-08-07 13:43           ` Christopher Covington
2014-08-07 13:53             ` Peter Maydell
2014-08-07 14:13               ` Christopher Covington
2014-08-07 14:53                 ` Peter Maydell
2014-08-07 15:06               ` Richard W.M. Jones
2014-08-07 15:39                 ` Peter Maydell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140807114303.GM1302@redhat.com \
    --to=rjones@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).