From: Jan Kiszka <jan.kiszka@siemens.com>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: Glauber Costa <glommer@redhat.com>,
aliguori@us.ibm.com, qemu-devel@nongnu.org
Subject: [Qemu-devel] Re: [PATCH] remove pieces of source code
Date: Fri, 29 May 2009 11:08:38 +0200 [thread overview]
Message-ID: <4A1FA616.7040402@siemens.com> (raw)
In-Reply-To: <4A1F77C0.9050407@codemonkey.ws>
Anthony Liguori wrote:
> Glauber Costa wrote:
>> Have you ever seen a girl so beautiful that you, geeky,
>> think: "I'll never stand a chance"?
>>
>> But sometimes, you decide to make your move anyway. There's
>> always the chance that in that very day she'll be specially
>> in good mood, and you'll get what you want.
>>
>> With the exception of the fact that qemu is not a girl,
>> that's more or less what I'm trying to do here: Hopefully,
>> nobody will notice what I'm trying to do, and will commmit it.
>> Later, when realizing, it will be too late. Victory will be mine.
>>
>> Or maybe people will even agree. For that, I'll try briefly
>> to arguee my point, without disclosing to much, avoiding
>> jeopardizing the strategy I explained above:
>>
>> This patch removes a piece of code that is unmaintaned,
>> that does not receive an update for years,
>> that get bug reports on the list that nobody fixes, because
>> nobody really understands,
>> that places some artificial constraints on other subsystems
>>
>> Signed-off-by: Glauber Costa <glommer@redhat.com
>
> Let's actually build a proper case instead of closing our eyes and
> hitting enter. Here are the downsides of kqemu I know of:
>
> o Since it's enabled by default, it forces the default build to support
> < 4GB of guest memory
Making -no-kqemu the default appears as a reasonable first step then -
to kill those silly "Could not open '/dev/kqemu'" warnings) and also to
collect complains like: "What the heck happened to kqemu?"
> o It attempts to use /dev/shm for guest memory which means a special
> option is needed in the default build to use more than 1/2 of host ram size
> o It touches an awful lot of places in QEMU
> o Some of the BIOS changes are particularly nasty and will prevent
> having a unified BIOS between QEMU and Bochs
> o The kernel bits will never go upstream for Linux
> o No one actively supports kqemu in upstream QEMU
We did some work on it a few months ago, trying to enhance its support
for segmented guests. It turned out to require unreasonable effort and
would still perform not significantly better than plain qemu in this
context (and our customer dropped the idea to support legacy systems
anyway). The results are a few low-level fixes and enhancements (that I
still want to post once cleaned up) and the confirmation of what is
likely already clear to people who had a look at the kernel bits: They
are almost unmaintainable and can cause severe headache when trying to
understand them.
>
> That said, here are the arguments for keeping kqemu
>
> o Even though it's unmaintained, it seems to work for people
At some point, I bet, at least the Linux bindings will break, and no one
will be interested or able to fix that anymore. Same may happen to other
platforms (doesn't Windows 7 come with a new driver model?).
> o There is no alternative for non-Linux users and folks with non-VT/SVM
> hardware
The non-HVM argument will become widely irrelevant (for desktops) very
soon. The non-Linux issue will likely persist - unless someone feels so
much pain to write some KVM for those platforms. But as long as there is
a kqemu version that builds and works for them, I think we should keep
QEMU's support. But it should no longer be a first-class citizen: off by
default, factored out into more hooks, maybe even de-optimized where it
blocks development or increases the maintenance effort of QEMU.
Jan
--
Siemens AG, Corporate Technology, CT SE 2
Corporate Competence Center Embedded Linux
next prev parent reply other threads:[~2009-05-29 9:08 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-28 23:03 [Qemu-devel] [PATCH] remove pieces of source code Glauber Costa
2009-05-29 5:50 ` Anthony Liguori
2009-05-29 9:08 ` Jan Kiszka [this message]
2009-05-29 9:12 ` [Qemu-devel] " Anthony Liguori
2009-05-29 9:35 ` Stefan Weil
2009-06-02 20:09 ` Stuart Brady
2009-06-02 20:29 ` Avi Kivity
2009-05-29 10:00 ` Daniel P. Berrange
2009-05-29 10:20 ` Jan Kiszka
2009-05-29 11:35 ` Glauber Costa
2009-05-30 18:04 ` François Revol
2009-05-31 9:13 ` Jan Kiszka
2009-05-31 14:53 ` Jamie Lokier
2009-05-31 15:43 ` Jan Kiszka
2009-05-29 11:32 ` [Qemu-devel] " Glauber Costa
2009-05-29 11:42 ` Gerd Hoffmann
2009-05-29 15:43 ` [Qemu-devel] " Consul
2009-05-29 18:49 ` Glauber Costa
2009-05-30 10:26 ` Andreas Färber
2009-05-31 9:15 ` Jan Kiszka
2009-05-31 13:08 ` Andreas Färber
2009-05-31 13:40 ` Avi Kivity
2009-05-31 16:20 ` M. Warner Losh
2009-05-31 15:10 ` Jan Kiszka
2009-06-06 10:17 ` Andreas Färber
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=4A1FA616.7040402@siemens.com \
--to=jan.kiszka@siemens.com \
--cc=aliguori@us.ibm.com \
--cc=anthony@codemonkey.ws \
--cc=glommer@redhat.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).