From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Blue Swirl <blauwirbel@gmail.com>
Cc: "qemu-devel@nongnu.org List" <qemu-devel@nongnu.org>,
Paul Mackerras <paulus@samba.org>, Alexander Graf <agraf@suse.de>,
anton@samba.org, David Gibson <david@gibson.dropbear.id.au>
Subject: [Qemu-devel] Re: [PATCH 15/15] Implement the bus structure for PAPR virtual IO
Date: Sun, 13 Feb 2011 10:07:42 -0600 [thread overview]
Message-ID: <1297613262.14982.647.camel@pasglop> (raw)
In-Reply-To: <AANLkTikTZrcvcRE9msA+1HF1xPDQgHpRugtAn9CzC3Or@mail.gmail.com>
On Sun, 2011-02-13 at 10:08 +0200, Blue Swirl wrote:
> This is a bit of a special case, much like semihosting modes for m68k
> or ARM, or like MOL hacks which were removed recently. From QEMU point
> of view, the most natural way of handling this would be hypervisor
> implemented in the guest side (for example BIOS). Then the hypervisor
> would use normal IO (or virtio) to communicate with the host. If
> inside QEMU, the interface of the hypervisor to the devices needs some
> thought. We'd like to avoid ugly interfaces like vmmouse where a
> device probes CPU registers directly or spaghetti interfaces like
> APIC.
I'm not sure I understand your point. We are emulating a guest running
under pHyp, ie, qemu in that case is the hypervisor, and provides the
same interfaces as pHyp does (the IBM proprietary hypervisor, aka
sPAPR). This is how we enable booting existing kernels and distributions
inside qemu/kvm.
> Is the interface new design, or are you implementing what is used also
> on real HW?
We are implementing a subset of the interfaces implemented by pHyp today
on "real HW". In the long run, when you throw KVM into the picture, on
machines (hypothetical machines at this stage) where one can run a KVM
has a hypervisor (currently you can only run pHyp on all released IBM
machines), this will give you an environment that is compatible with
pHyp and thus supports existing distributions and kernels.
We -will- add support for the "real" virtio on top of that, but those
will require modified guest kernels (and will provide better
performances than the sPAPR emulation). But the sPAPR emulation is a
necessary step to enable existing stuff to run.
Cheers,
Ben.
next prev parent reply other threads:[~2011-02-13 16:07 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-12 14:54 [Qemu-devel] RFC: Implement emulation of pSeries logical partitions David Gibson
2011-02-12 14:54 ` [Qemu-devel] [PATCH 01/15] Add TAGS and *~ to .gitignore David Gibson
2011-02-12 14:54 ` [Qemu-devel] [PATCH 02/15] Clean up PowerPC SLB handling code David Gibson
2011-02-12 15:17 ` [Qemu-devel] " Alexander Graf
2011-02-12 14:54 ` [Qemu-devel] [PATCH 03/15] Allow qemu_devtree_setprop() to take arbitrary values David Gibson
2011-02-12 15:18 ` [Qemu-devel] " Alexander Graf
2011-02-12 14:54 ` [Qemu-devel] [PATCH 04/15] Add a hook to allow hypercalls to be emulated on PowerPC David Gibson
2011-02-12 15:19 ` [Qemu-devel] " Alexander Graf
2011-02-12 14:54 ` [Qemu-devel] [PATCH 05/15] Implement PowerPC slbmfee and slbmfev instructions David Gibson
2011-02-12 15:23 ` [Qemu-devel] " Alexander Graf
2011-02-13 12:46 ` David Gibson
2011-02-12 14:54 ` [Qemu-devel] [PATCH 06/15] Implement missing parts of the logic for the POWER PURR David Gibson
2011-02-12 15:25 ` [Qemu-devel] " Alexander Graf
2011-02-12 14:54 ` [Qemu-devel] [PATCH 07/15] Correct ppc popcntb logic, implement popcntw and popcntd David Gibson
2011-02-12 15:27 ` [Qemu-devel] " Alexander Graf
2011-02-12 14:54 ` [Qemu-devel] [PATCH 08/15] Clean up slb_lookup() function David Gibson
2011-02-12 15:30 ` [Qemu-devel] " Alexander Graf
2011-02-12 14:54 ` [Qemu-devel] [PATCH 09/15] Parse SDR1 on mtspr instead of at translate time David Gibson
2011-02-12 15:37 ` [Qemu-devel] " Alexander Graf
2011-02-13 9:02 ` David Gibson
2011-02-13 12:33 ` Alexander Graf
2011-02-13 12:52 ` David Gibson
2011-02-12 14:54 ` [Qemu-devel] [PATCH 10/15] Use "hash" more consistently in ppc mmu code David Gibson
2011-02-12 15:47 ` [Qemu-devel] " Alexander Graf
2011-02-12 14:54 ` [Qemu-devel] [PATCH 11/15] Better factor the ppc hash translation path David Gibson
2011-02-12 15:52 ` [Qemu-devel] " Alexander Graf
2011-02-12 14:54 ` [Qemu-devel] [PATCH 12/15] Support 1T segments on ppc David Gibson
2011-02-12 15:57 ` [Qemu-devel] " Alexander Graf
2011-02-13 9:34 ` David Gibson
2011-02-13 12:37 ` Alexander Graf
2011-02-13 13:38 ` David Gibson
2011-02-12 14:54 ` [Qemu-devel] [PATCH 13/15] Add POWER7 support for ppc David Gibson
2011-02-12 16:09 ` [Qemu-devel] " Alexander Graf
2011-02-13 9:39 ` David Gibson
2011-02-13 12:37 ` Alexander Graf
2011-02-12 14:54 ` [Qemu-devel] [PATCH 14/15] Start implementing pSeries logical partition machine David Gibson
2011-02-12 16:23 ` [Qemu-devel] " Alexander Graf
2011-02-12 16:40 ` Blue Swirl
2011-02-12 20:54 ` Benjamin Herrenschmidt
2011-02-12 14:54 ` [Qemu-devel] [PATCH 15/15] Implement the bus structure for PAPR virtual IO David Gibson
2011-02-12 16:47 ` [Qemu-devel] " Alexander Graf
2011-02-12 16:59 ` Blue Swirl
2011-02-12 21:00 ` Benjamin Herrenschmidt
2011-02-12 22:52 ` Blue Swirl
2011-02-12 23:15 ` Benjamin Herrenschmidt
2011-02-13 8:08 ` Blue Swirl
2011-02-13 11:12 ` David Gibson
2011-02-13 12:15 ` Blue Swirl
2011-02-13 16:12 ` Benjamin Herrenschmidt
2011-02-13 15:08 ` Anthony Liguori
2011-02-13 15:56 ` Alexander Graf
2011-02-13 16:46 ` Anthony Liguori
2011-02-13 18:29 ` Blue Swirl
2011-02-13 19:32 ` Anthony Liguori
2011-02-13 23:33 ` David Gibson
2011-02-13 23:30 ` David Gibson
2011-02-13 12:31 ` Alexander Graf
2011-02-13 12:59 ` Blue Swirl
2011-02-13 16:07 ` Benjamin Herrenschmidt [this message]
2011-02-13 16:48 ` Anthony Liguori
2011-02-13 18:19 ` Benjamin Herrenschmidt
2011-02-13 11:14 ` David Gibson
2011-02-13 12:40 ` Alexander Graf
2011-02-13 12:44 ` David Gibson
2011-02-13 13:09 ` Alexander Graf
2011-02-13 15:14 ` Anthony Liguori
2011-02-13 16:17 ` Benjamin Herrenschmidt
2011-02-13 16:52 ` Anthony Liguori
2011-02-13 18:21 ` Benjamin Herrenschmidt
2011-02-13 11:09 ` David Gibson
2011-02-13 12:38 ` Alexander Graf
2011-02-14 4:16 ` [Qemu-devel] RFC: Implement emulation of pSeries logical partitions FUJITA Tomonori
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=1297613262.14982.647.camel@pasglop \
--to=benh@kernel.crashing.org \
--cc=agraf@suse.de \
--cc=anton@samba.org \
--cc=blauwirbel@gmail.com \
--cc=david@gibson.dropbear.id.au \
--cc=paulus@samba.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).