linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: christoffer.dall@linaro.org (Christoffer Dall)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC] ARM VM System Sepcification
Date: Wed, 26 Feb 2014 14:25:53 -0800	[thread overview]
Message-ID: <20140226222553.GF16149@cbox> (raw)
In-Reply-To: <20140226214843.GD12169@bivouac.eciton.net>

On Wed, Feb 26, 2014 at 09:48:43PM +0000, Leif Lindholm wrote:
> On Wed, Feb 26, 2014 at 08:55:58PM +0100, Arnd Bergmann wrote:
> > On Wednesday 26 February 2014 10:34:54 Christoffer Dall wrote:
> > > ARM VM System Specification
> > > ===========================
> > > 
> > > Goal
> > > ----
> > > The goal of this spec is to allow suitably-built OS images to run on
> > > all ARM virtualization solutions, such as KVM or Xen.
> > > 
> > > Recommendations in this spec are valid for aarch32 and aarch64 alike, and
> > > they aim to be hypervisor agnostic.
> > > 
> > > Note that simply adhering to the SBSA [2] is not a valid approach,
> > > for example because the SBSA mandates EL2, which will not be available
> > > for VMs.  Further, the SBSA mandates peripherals like the pl011, which
> > > may be controversial for some ARM VM implementations to support.
> > > This spec also covers the aarch32 execution mode, not covered in the
> > > SBSA.
> > 
> > I would prefer if we can stay as close as possible to SBSA for individual
> > hardware components, and only stray from it when there is a strong reason.
> > pl011-subset doesn't sound like a significant problem to implement,
> > especially as SBSA makes the DMA part of that optional. Can you
> > elaborate on what hypervisor would have a problem with that?
> 
> I believe it comes down to how much extra overhead pl011-access-trap
> would be over virtio-console. If low, then sure.
> (Since there are certain things we cannot provide SBSA-compliant in
> the guest anyway, I wouldn't consider lack of pl011 to be a big issue.)
> 

I don't think it's about overhead, sure pl011 may be slower, but it's a
serial port, does anyone care about performance of a console? pl011
should be good enough for sure.

I think the issue is that Xen does no real device emulation today at
all, they don't use QEMU etc.  That being said, adding a pl011 emulation
in the Xen tools doesn't seem like the worst idea in the world, but I
will let them chime in on why they are opposed to it.

> > >   no FDT.  In this case, the VM implementation must provide ACPI, and
> > >   the OS must be able to locate the ACPI root pointer through the UEFI
> > >   system table.
> > > 
> > > For more information about the arm and arm64 boot conventions, see
> > > Documentation/arm/Booting and Documentation/arm64/booting.txt in the
> > > Linux kernel source tree.
> > > 
> > > For more information about UEFI and ACPI booting, see [4] and [5].
> > 
> > What's the point of having ACPI in a virtual machine? You wouldn't
> > need to abstract any of the hardware in AML since you already know
> > what the virtual hardware is, so I can't see how this would help
> > anyone.
> 
> The point is that if we need to share any real hw then we need to use
> whatever the host has.
> 
> > However, as ACPI will not be supported by arm32, not having the
> > complete FDT will prevent you from running a 32-bit guest on
> > a 64-bit hypervisor, which I consider an important use case.
> 
> In which case we would be making an active call to ban anything other
> than virtio/xen-pv devices for 32-bit guests on hardware without DT.
> 
> However, I see the case of a 32-bit guest on 64-bit hypervisor as less
> likely in the server space than in mobile, and ACPI in mobile as
> unlikely, so it may end up not being a big issue.
> 
But you may want a networking applicance, for example, built on ARM
64-bit hardware, with an ARM 64-bit hypervisor on there, and you wish to
run some 32-bit system in a VM.  If the hardware is ACPI based, it would
be a shame if the VM implementation (or the virtual firmware) couldn't
provide a useable 32-bit FDT.  We may want to call that case out in this
document?

Thanks,
-Christoffer

  reply	other threads:[~2014-02-26 22:25 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-26 18:34 [RFC] ARM VM System Sepcification Christoffer Dall
     [not found] ` < CACxGe6tjuytsYAn6Hadf0AK+REzHgRydgbHPafL8+Sdtd_tMUA@mail.gmail.com>
2014-02-26 19:27 ` Christopher Covington
2014-02-26 19:51   ` Christoffer Dall
2014-02-27 13:12     ` Christopher Covington
2014-02-27 16:02       ` Christoffer Dall
2014-03-01 15:41       ` Grant Likely
2014-02-26 19:55 ` Arnd Bergmann
2014-02-26 20:05   ` Christoffer Dall
2014-02-26 20:22     ` Arnd Bergmann
     [not found]       ` < CABGGisxHOVqLcG7hVAuAzdeic41KWSLLBSjQLSJQcjTXLhNCow@mail.gmail.com>
2014-02-26 21:56       ` Rob Herring
2014-02-26 22:21         ` Christoffer Dall
2014-02-27  7:30           ` Arnd Bergmann
2014-02-27 10:05             ` Paolo Bonzini
2014-03-01 19:12           ` Grant Likely
2014-02-27  9:35     ` Catalin Marinas
2014-02-26 20:19   ` Paolo Bonzini
2014-02-26 20:20     ` Peter Maydell
2014-02-26 21:48   ` Leif Lindholm
2014-02-26 22:25     ` Christoffer Dall [this message]
2014-03-01 19:20       ` Grant Likely
2014-02-27 12:31     ` Stefano Stabellini
2014-02-27 14:00       ` Arnd Bergmann
2014-02-27 14:24         ` Alexander Graf
2014-02-27 19:56           ` Arnd Bergmann
2014-02-28  0:05             ` Alexander Graf
2014-02-28 10:01               ` Arnd Bergmann
2014-02-28 14:44               ` Stefano Stabellini
2014-03-01 19:25         ` Grant Likely
2014-02-26 22:49   ` Rob Herring
2014-02-26 22:54     ` Peter Maydell
2014-02-26 23:08       ` Rob Herring
2014-02-26 23:14         ` Peter Maydell
2014-02-27  4:06           ` Nicolas Pitre
2014-02-27 11:36         ` Robie Basak
2014-02-26 23:13     ` Christopher Covington
2014-02-26 21:05 ` Michael Hudson-Doyle
2014-02-26 21:08   ` Christoffer Dall
     [not found] ` <CACxGe6tjuytsYAn6Hadf0AK+REzHgRydgbHPafL8+Sdtd_tMUA@mail.gmail.com>
2014-02-26 22:47   ` Christoffer Dall
2014-02-27 12:27   ` Stefano Stabellini
2014-03-01 19:54     ` Grant Likely
2014-03-02  9:29       ` Peter Maydell
2014-02-27 12:55   ` Peter Maydell
2014-02-27  0:41 ` Blibbet
     [not found] ` <20140226134251.0436294e@anubis.ausil.us>
     [not found]   ` <CAMJs5B9bCs8Oz2Zg4UK--A3H4AaZRPMwy7SpxYom-1--_=qhBQ@mail.gmail.com>
     [not found]     ` <20140226151536.58154704@anubis.ausil.us>
2014-02-27 17:34       ` Grant Likely
2014-03-01 15:27 ` Grant Likely
2014-03-03  1:13   ` Christoffer Dall
2014-03-06  8:52   ` Robie Basak
2014-03-06  9:46     ` Paolo Bonzini
2014-03-06 11:44       ` Laszlo Ersek
2014-03-06 12:04         ` Robie Basak
2014-03-06 12:10           ` Paolo Bonzini
2014-03-07 12:24           ` Grant Likely
     [not found]             ` < 20140322010206.GF25519@cbox>
2014-03-22  2:29             ` Christoffer Dall
2014-03-22  8:08               ` Paolo Bonzini
2014-03-23  3:19                 ` Christoffer Dall
2014-03-23  3:29                   ` Christoffer Dall
2014-03-24  9:57                     ` Robie Basak
2014-03-24 10:46                       ` Paolo Bonzini
2014-03-22 12:23               ` Grant Likely
2014-03-22 19:57                 ` Paolo Bonzini
2014-03-22 22:35                   ` Grant Likely
2014-03-22 23:38                   ` Michael Casadevall
2014-03-23  0:33                     ` Laszlo Ersek
2014-03-23  3:23                 ` Christoffer Dall
2014-03-24  9:03                 ` Ian Campbell
2014-03-24 10:41                   ` Paolo Bonzini
2014-03-24 10:47                     ` Ian Campbell
2014-03-24 12:13                   ` Grant Likely
2014-03-24 12:16                     ` Ian Campbell
2014-03-07 12:19       ` Grant Likely
2014-03-08 11:41       ` Michael Casadevall
2014-03-08 20:41         ` Laszlo Ersek
2014-03-07 12:09     ` Grant Likely

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=20140226222553.GF16149@cbox \
    --to=christoffer.dall@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.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).