From: Paolo Bonzini <pbonzini@redhat.com>
To: Christopher Covington <cov@codeaurora.org>,
"Daniel P. Berrange" <berrange@redhat.com>,
Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-devel <qemu-devel@nongnu.org>, KVM list <kvm@vger.kernel.org>
Subject: Re: [Qemu-devel] Announcing qboot, a minimal x86 firmware for QEMU
Date: Wed, 27 May 2015 14:59:35 +0200 [thread overview]
Message-ID: <5565BFB7.7000406@redhat.com> (raw)
In-Reply-To: <5565BD9D.2030305@codeaurora.org>
On 27/05/2015 14:50, Christopher Covington wrote:
>> Not really. virtio is too heavyweight
>
> I'd be curious to read where in your estimation this weight lies. Is it
> one-time initialization or recurring? Is it specific to the PCI transport or
> does MMIO suffer from it as well?
It's heavyweight in the sense that virtio requires you to design a
communication mechanism based on ring buffers. It's much harder than a
few ad-hoc registers.
And I know everyone is upset about the attack surface of QEMU these
days, but effort would be much better spent adding QEMU-specific
customizations to a static analysis tool (that e.g. would derive bound
checks for the MemoryRegion read/write ops and be able to prove that
said ops cannot access arrays out of their bounds).
>> and you'd be reinventing the wheel unnecessarily.
>
> In my mind the utility of peripherals that are instruction set architecture
> agnostic and can work over several transports is in reducing the amount of
> (emulator/hypervisor, firmware, and OS) code used, and therefore in need of
> maintenance, for common system emulation and virtualization use cases.
A fully processor-agnostic hardware architecture is a non-goal. You'll
always have stuff like interrupt controllers that is extremely tied to
the processor.
If you want to abstract hardware, use the firmware, Luke! Things such
as UEFI and ACPI are there for exactly this reason. We will be able to
reuse a lot of x86 hotplug code on ARM using ACPI. And if you don't
want to use ACPI, you can always write native OS drivers for the same
hotplug hardware.
Paolo
next prev parent reply other threads:[~2015-05-27 12:59 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-21 13:51 [Qemu-devel] Announcing qboot, a minimal x86 firmware for QEMU Paolo Bonzini
2015-05-21 15:48 ` Avi Kivity
2015-05-21 16:21 ` Paolo Bonzini
2015-05-21 18:28 ` Avi Kivity
2015-05-21 17:04 ` Jan Kiszka
2015-05-22 2:53 ` Yong Wang
2015-05-26 8:47 ` Stefan Hajnoczi
2015-06-05 10:42 ` Stefan Hajnoczi
2015-05-22 11:01 ` Daniel P. Berrange
2015-05-22 11:04 ` Peter Maydell
2015-05-22 11:12 ` Daniel P. Berrange
2015-05-22 11:21 ` Peter Maydell
2015-05-22 11:33 ` Daniel P. Berrange
2015-05-22 11:34 ` Gerd Hoffmann
2015-05-22 11:42 ` Markus Armbruster
2015-05-25 12:53 ` Paolo Bonzini
2015-05-26 21:25 ` Christopher Covington
2015-05-27 9:30 ` Paolo Bonzini
2015-05-27 9:36 ` Avi Kivity
2015-05-27 11:00 ` Paolo Bonzini
2015-05-27 11:54 ` Peter Maydell
2015-05-27 12:05 ` Paolo Bonzini
2015-05-27 12:50 ` Christopher Covington
2015-05-27 12:59 ` Paolo Bonzini [this message]
2015-05-27 16:24 ` Dr. David Alan Gilbert
2015-05-22 14:06 ` Gerd Hoffmann
2015-05-22 23:23 ` Kevin O'Connor
2015-05-23 3:55 ` Kevin O'Connor
2015-05-25 6:21 ` Vasiliy Tolstov
2015-05-25 15:05 ` Kevin O'Connor
2015-05-25 12:52 ` Paolo Bonzini
2015-05-25 15:11 ` Kevin O'Connor
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=5565BFB7.7000406@redhat.com \
--to=pbonzini@redhat.com \
--cc=berrange@redhat.com \
--cc=cov@codeaurora.org \
--cc=kvm@vger.kernel.org \
--cc=peter.maydell@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).