qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Blue Swirl <blauwirbel@gmail.com>
Cc: Graf <agraf@suse.de>,
	"qemu-devel@nongnu.org List" <qemu-devel@nongnu.org>,
	Paul Mackerras <paulus@samba.org>,
	anton@samba.org, David Gibson <david@gibson.dropbear.id.au>,
	Alexander@gnu.org
Subject: Re: [Qemu-devel] Re: [PATCH 15/15] Implement the bus structure for PAPR virtual IO
Date: Sun, 13 Feb 2011 10:12:36 -0600	[thread overview]
Message-ID: <1297613556.14982.652.camel@pasglop> (raw)
In-Reply-To: <AANLkTi=iKToFvNXZTcwrvg4dUBbWQrbR+yX0DtYNw0Yy@mail.gmail.com>

On Sun, 2011-02-13 at 14:15 +0200, Blue Swirl wrote:
> 
> Maybe it would be more complex but also emulation accuracy would be
> increased and the interfaces would be saner. We don't shortcut BIOS
> and implement its services to OS in QEMU for other machines either.

But that is not comparable. BIOS is comparable for example to Open
Firmware and we do not 'emulate' OF, we will provide an implementation
that runs inside the guest, just like you do for BIOS (SLOF based, tho
people are welcome to play with OpenBIOS if they want, but SLOF is what
we will provide and support).

In this case, we are talking about a hypervisor which is somewhat a
different beast. Sure you -could- run it into the guest, I suppose, if
emulation accuracy was your ultimate goal. That would entail at least
the followings:

 - Implement support for the complete "hypervisor" mode inside qemu
 - Re-implement a complete hypervisor compatible with pHyp

An enormous amount of work, for a result that would have low
performances and about zero interest to anybody.

The goal here is to provide a runtime environment for kernels and
distributions that is -compatible- with sPAPR/pHyp to enable existing
distributions to operate in KVM.

> I'd expect one problem with that approach though, the interface used
> on real HW between the hypervisor and the underlying HW may be
> undocumented, but then it could use for example existing virtio
> devices.

But what would be the point ?

> One way to handle this could be to add the hypervisor interface now to
> QEMU and switch to guest hypervisor when (if) it becomes available.
> I'd just like to avoid duplication with virtio or messy interfaces
> like vmport. 

Again, what would be the point ? Eventually, KVM will be available as an
"alternate" hypervisor to pHyp which I suppose one could run entirely
inside qemu once we add support for the HV mode to it, and that would
somewhat do what you describe but that isn't what we are trying to get
at here.

Cheers,
Ben.

  reply	other threads:[~2011-02-13 16:12 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 [this message]
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
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=1297613556.14982.652.camel@pasglop \
    --to=benh@kernel.crashing.org \
    --cc=Alexander@gnu.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).