From: Jan Kiszka <jan.kiszka@siemens.com>
To: Avi Kivity <avi@redhat.com>, Jamie Lokier <jamie@shareable.org>
Cc: Anton D Kachalov <mouse@mayc.ru>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
Lennart Sorensen <lsorense@csclub.uwaterloo.ca>
Subject: [Qemu-devel] Re: POLL: Why do you use kqemu?
Date: Mon, 08 Jun 2009 14:36:41 +0200 [thread overview]
Message-ID: <4A2D05D9.7030605@siemens.com> (raw)
In-Reply-To: <4A2CFE07.90700@redhat.com>
Avi Kivity wrote:
> Jamie Lokier wrote:
>>>> Plus kvm's not suitable for some guests. I'm thinking old Windows
>>>> guests with 16-bit kernel code here.
>>>>
>>>>
>>> kvm on amd will run these perfectly.
>>>
>>
>> So the "Guest Support Status" prominently on the front page of
>> linux-kvm.org is wrong for current versions? It specifically mentions
>> AMD hosts.
>>
>> (I notice AMD KVM != Intel KVM hasn't factored into this discussion
>> yet...)
>>
>> Guest KVM tested Host CPU/bits Result
>> ----------------------------------------------------------------
>> Windows 98SE kvm-63 Intel 32 Fails
>> Windows 98SE kvm-80, 2.6.27.7 AMD 64 no way
>> Windows 95 kvm-44, 2.6.23-rc8 AMD 64, 32 no way
>>
>
> Well, maybe there's some other bug in there. But kvm-amd 16 bit support
> is as good as the native cpu's. kvm-intel with the new 'unrestricted
> guest' should be the same.
That's about 16-bit real mode.
FWIW, we are running a 16-bit heavily segmented protected mode OS inside
kvm for quite a while now. Works smoothly on both amd and intel.
>
>>>> It has come up before that kvm will eventually support 16-bit code
>>>> better, although I got the impression that it would never support full
>>>> 16-bit virtualisation accurately, so e.g. Windows 95 will not run on
>>>> it, nor some other partially 16-bit OSes. Possibly not even very old
>>>> versions of Linux, I'm not sure.
>>>>
>>>> Don't ask me _why_ I want to run them. :-)
>>>>
>>>> Just a data point that it's not just about the host hardware, and as
>>>> far as I know kqemu can accelerate them.
>>>>
>>>>
>>> It falls back to qemu for 16-bit code.
>>>
>>
>> I was under the impression it was planned to remove TCG support when
>> using KVM. If not, fine, it's ok for 16-bit code to run in TCG and
>> probably better than vm86 or the in-kernel interpreter.
>>
>
> vm86 doesn't work on x86_64. kvm will run most 16-bit code natively,
> just have to complete task switch support and fix any bugs.
>
Regarding kqemu: It runs real-mode code in tcg, which is probably faster
than in-kernel interpretation, but definitely slower than the native
execution you get with amd and soon also intel.
When it comes to 16-bit protected mode, kqemu attempts to run it in the
accelerator. But, as reported earlier, it quickly falls into pieces once
the guest tries to make serious use of x86 protected mode. We tried to
improve this, but it turned out to be a dead end, not only because of
kqemu itself but also because of the inherent issues legacy x86 hardware
has /wrt virtualization. So nothing to score for kqemu here, too.
Jan
--
Siemens AG, Corporate Technology, CT SE 2
Corporate Competence Center Embedded Linux
next prev parent reply other threads:[~2009-06-08 12:37 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-03 21:57 [Qemu-devel] POLL: Why do you use kqemu? Anthony Liguori
2009-06-04 16:55 ` Anton D Kachalov
2009-06-05 0:44 ` Johannes Schindelin
2009-06-05 7:45 ` Gerd Hoffmann
2009-06-05 8:40 ` Tomasz Chmielewski
2009-06-05 9:08 ` Anton D Kachalov
2009-06-05 9:15 ` Gerd Hoffmann
2009-06-05 20:14 ` Lennart Sorensen
2009-06-05 23:23 ` Johannes Schindelin
2009-06-08 0:13 ` Jamie Lokier
2009-06-08 5:59 ` Avi Kivity
2009-06-08 11:57 ` Jamie Lokier
2009-06-08 12:03 ` Avi Kivity
2009-06-08 12:16 ` Jamie Lokier
2009-06-08 12:28 ` Avi Kivity
2009-06-08 12:44 ` [Qemu-devel] " Jan Kiszka
2009-06-08 13:06 ` Avi Kivity
2009-06-08 13:18 ` Jan Kiszka
2009-06-08 13:24 ` Avi Kivity
2009-06-08 13:44 ` Jan Kiszka
2009-06-08 14:03 ` Avi Kivity
2009-06-08 12:36 ` Jan Kiszka [this message]
2009-06-08 18:25 ` [Qemu-devel] " Lennart Sorensen
2009-06-06 13:27 ` Andreas Färber
2009-06-06 16:02 ` Avi Kivity
2009-06-06 16:29 ` Blue Swirl
2009-06-06 17:02 ` [Qemu-devel] " Jan Kiszka
2009-06-06 17:25 ` Blue Swirl
2009-06-06 17:32 ` Jan Kiszka
2009-06-06 19:15 ` Andreas Färber
2009-06-07 5:43 ` Avi Kivity
2009-06-07 5:01 ` Avi Kivity
2009-06-07 7:35 ` Jan Kiszka
2009-06-07 7:46 ` Avi Kivity
2009-06-07 8:33 ` Blue Swirl
2009-06-07 8:50 ` Jan Kiszka
2009-06-07 9:01 ` Blue Swirl
2009-06-07 9:25 ` Jan Kiszka
2009-06-07 9:37 ` Avi Kivity
2009-06-07 9:47 ` Jan Kiszka
2009-06-07 9:52 ` Avi Kivity
2009-06-07 9:56 ` Jan Kiszka
2009-06-07 10:06 ` Avi Kivity
2009-06-07 11:13 ` Blue Swirl
2009-06-07 11:23 ` Gleb Natapov
2009-06-07 11:26 ` Blue Swirl
2009-06-07 11:29 ` Gleb Natapov
2009-06-07 11:39 ` Avi Kivity
2009-06-07 12:40 ` Blue Swirl
2009-06-07 12:43 ` Avi Kivity
2009-06-07 12:52 ` Gleb Natapov
2009-06-07 12:56 ` Avi Kivity
2009-06-07 13:18 ` Blue Swirl
2009-06-07 13:35 ` Jan Kiszka
2009-06-07 13:35 ` Avi Kivity
2009-06-07 18:37 ` Anthony Liguori
2009-06-07 18:40 ` Blue Swirl
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=4A2D05D9.7030605@siemens.com \
--to=jan.kiszka@siemens.com \
--cc=avi@redhat.com \
--cc=jamie@shareable.org \
--cc=lsorense@csclub.uwaterloo.ca \
--cc=mouse@mayc.ru \
--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).