qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Maydell <peter.maydell@linaro.org>
To: Alexander Graf <agraf@suse.de>
Cc: patches@linaro.org, qemu-devel@nongnu.org,
	"Andreas Färber" <afaerber@suse.de>,
	kvmarm@lists.cs.columbia.edu
Subject: Re: [Qemu-devel] [RFC 0/2] target-arm: Provide '-cpu host' when running KVM
Date: Wed, 14 Aug 2013 10:06:13 +0100	[thread overview]
Message-ID: <CAFEAcA8eGT=xVQp53hQvGdhoDPRzShHMYJevqjWrPTbna3fu-A@mail.gmail.com> (raw)
In-Reply-To: <DEC3051D-FD46-4ACA-8154-9F2B065656E0@suse.de>

On 14 August 2013 07:32, Alexander Graf <agraf@suse.de> wrote:
>
> On 13.08.2013, at 20:03, Peter Maydell wrote:
>
>> These patches add support to target-arm for '-cpu host'.
>> The general semantics are the same as for ppc and x86 (ie "whatever
>> the host kernel can support that looks basically like the host
>> CPU"), but the mechanism is a little different.
>>
>> The kernel API (currently still proposed rather than implemented,
>> hence the RFC nature of this patchset) is that the existing
>> KVM_ARM_VCPU_INIT supports a new 'target' value KVM_ARM_TARGET_HOST,
>> which it treats as "whatever you are". On the userspace side,
>> we use this if the kernel supports it. If it doesn't then we
>> know the kernel must be an A15-on-A15 only one, and so can
>> safely implement '-cpu host' with KVM_ARM_TARGET_CORTEX_A15.
>
> How do you know what core specific registers QEMU can expect from
> this particular CPU?

For 99% of them we simply don't care...

> Imagine ARM changes the MMU implementation in the next ARMv8 CPU.
> With -cpu host you wouldn't be able to support gdbstub anymore,
> because you wouldn't know whether the MMU format is the old or
> the new one.

...and for the other 1% we can add a bit to the VCPU_INIT features
field saying "this QEMU can handle CPUs with $weird-new-thing"
and have the kernel fail CPU creation otherwise.

> I really prefer the "probe the host, match it fuzzily with our
> own list, pick a specific own core" way of doing -cpu host. Then
> it's really only ever an alias and you don't have to worry about
> all these odd special cases.

I really don't want to be trying to model five hundred different
CPUs inside QEMU half of which I probably won't have the
documentation for. That is just going to mean "KVM+QEMU won't
work on a lot of hardware when there is no reason it shouldn't".

-- PMM

      parent reply	other threads:[~2013-08-14  9:06 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-13 18:03 [Qemu-devel] [RFC 0/2] target-arm: Provide '-cpu host' when running KVM Peter Maydell
2013-08-13 18:03 ` [Qemu-devel] [RFC 1/2] target-arm: Don't hardcode KVM target CPU to be A15 Peter Maydell
2013-08-13 18:03 ` [Qemu-devel] [RFC 2/2] target-arm: Provide '-cpu host' when running KVM Peter Maydell
2013-08-14  6:32 ` [Qemu-devel] [RFC 0/2] " Alexander Graf
2013-08-14  8:11   ` Marc Zyngier
2013-08-14  8:16     ` Alexander Graf
2013-08-14  8:27       ` Marc Zyngier
2013-08-14  8:46         ` Alexander Graf
2013-08-14  9:07           ` Peter Maydell
2013-08-14  9:11             ` Alexander Graf
2013-08-14  9:23               ` Peter Maydell
2013-08-14  9:30                 ` Alexander Graf
2013-08-14 17:26                   ` Christoffer Dall
2013-08-14 17:31                     ` Alexander Graf
2013-08-14 17:39                       ` Christoffer Dall
2013-08-14 17:44                         ` Alexander Graf
2013-08-14 18:18                           ` Christoffer Dall
2013-08-14 18:21                             ` Alexander Graf
2013-08-14 18:27                               ` Peter Maydell
2013-08-14 19:23                                 ` Alexander Graf
2013-08-14 18:28                               ` Christoffer Dall
2013-08-14 19:28                                 ` Alexander Graf
2013-08-14 20:33                                   ` Christoffer Dall
2013-08-14 20:47                                     ` Alexander Graf
2013-08-14 20:56                                       ` Christoffer Dall
2013-08-14 21:00                                         ` Alexander Graf
2013-08-25 14:42                                   ` Gleb Natapov
2013-08-25 15:11                                     ` Peter Maydell
2013-08-26 11:18                                       ` Gleb Natapov
2013-08-26 12:17                                         ` Peter Maydell
2013-08-14 18:11                       ` Peter Maydell
2013-08-14 18:15                         ` Alexander Graf
2013-08-14 18:24                           ` Peter Maydell
2013-08-14  9:06   ` Peter Maydell [this message]

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='CAFEAcA8eGT=xVQp53hQvGdhoDPRzShHMYJevqjWrPTbna3fu-A@mail.gmail.com' \
    --to=peter.maydell@linaro.org \
    --cc=afaerber@suse.de \
    --cc=agraf@suse.de \
    --cc=kvmarm@lists.cs.columbia.edu \
    --cc=patches@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).