qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Maydell <peter.maydell@linaro.org>
To: Assaf Gordon <assafgordon@gmail.com>
Cc: QEMU Developers <qemu-devel@nongnu.org>, Alexander Graf <agraf@suse.de>
Subject: Re: [Qemu-devel] Attempt at Mac OS X acceleration using "Hypervisor.Framwork"
Date: Thu, 12 Nov 2015 14:39:48 +0000	[thread overview]
Message-ID: <CAFEAcA-=QzWGCgxPLaSW+vMEFQLT0YTyn+O-bMa9F-i1cohacA@mail.gmail.com> (raw)
In-Reply-To: <784C0637-DC5D-45CA-B989-AF76378201D4@gmail.com>

On 12 November 2015 at 10:49, Assaf Gordon <assafgordon@gmail.com> wrote:
> Starting with Mac OS X version 10.10.3, Apple provides a system-level
> hypervisor framework (similar to KVM's kernel driver functionality
> on Linux).

> This attached patch attempts to provide the infrastructure glue for
> qemu to use this framework (when compiled on Mac OS X). It is not
> yet functional, but enables the following:
>
>   ./configure --enable-hvf --target-list=x86_64-softmmu
>   qemu-system-x86_64 -machine accel=hvf [...]
>
> Please advise as to whether this is the right approach, and whether
> it's worth pursuing.

I think it would be nice to be able to support hardware acceleration
on OSX hosts, and I think the official Apple hypervisor APIs for this
are the right way to do that. The questions I have are:
 * how much code are we going to end up with in QEMU to support that?
   (I've been told that the Apple APIs are very basic and low level,
   so a lot of the code that in KVM is in the kernel to handle irqchips,
   instruction emulation, etc, would need to also be in QEMU for the
   benefit of OSX. We could probably take a lot of that from KVM,
   but then maintenance and tracking bugfixes that go into the kernel
   code would be an immense pain in the future.)
 * is the code going to come with somebody who will stick around and
   help us maintain it for the long term?
   (At the moment OSX is only a minimally supported platform for QEMU,
   because so few of the core developers use it for day to day development,
   so we don't have the capacity to take on maintenance of a lot of
   new code without new people to help)

There doesn't look to be anything particularly problematic with
the skeleton code in your patch, but I think it would be easier
to judge how the design should look if we had a discussion of
what the differences between the KVM API and the hypervisor
framework API are, where that would need more code in QEMU and
how we'd handle that.

thanks
-- PMM

  reply	other threads:[~2015-11-12 14:40 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-12 10:49 [Qemu-devel] Attempt at Mac OS X acceleration using "Hypervisor.Framwork" Assaf Gordon
2015-11-12 14:39 ` Peter Maydell [this message]
2015-11-12 16:18   ` Paolo Bonzini

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='CAFEAcA-=QzWGCgxPLaSW+vMEFQLT0YTyn+O-bMa9F-i1cohacA@mail.gmail.com' \
    --to=peter.maydell@linaro.org \
    --cc=agraf@suse.de \
    --cc=assafgordon@gmail.com \
    --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).