* [Qemu-devel] Re: Status on ARM host cpu
2008-11-15 15:12 ` [Qemu-devel] " Steffen Liebergeld
@ 2008-11-15 22:21 ` Jan Kiszka
2008-11-17 16:32 ` Hollis Blanchard
1 sibling, 0 replies; 5+ messages in thread
From: Jan Kiszka @ 2008-11-15 22:21 UTC (permalink / raw)
To: qemu-devel
[-- Attachment #1: Type: text/plain, Size: 1658 bytes --]
Steffen Liebergeld wrote:
> Hi Paul,
>
> Paul Brook <paul@codesourcery.com> schrieb:
>> On Friday 14 November 2008, Steffen Liebergeld wrote:
>>> Hi,
>>>
>>> I am currently researching of whether or not it is feasible to port kqemu
>>> to the ARM platform. The website says qemu on ARM hosts is in
>>> "testing"-state. Does that still apply to the latest svn-Version?
>> Should just about work, though you should expect bugs.
>
>> However I advise using KVM and not kqemu. KVM has already been merged to
>> upstream kernels, and the chances of getting another hypervisor interface
>> merged are approximately zero.
>
> KVM is not an option for me (and is not available for the ARM-platform).
(...so is KQEMU)
> I plan to port kqemu for the ARM-platform. Do have any estimates, for how much
> work would be needed to adopt the kqemu-Interface of qemu (which is
> x86-centric) to ARM (ignoring the effort needed to port the
> kqemu-kernel-module)?
You should start with studying both KVM and KQEMU in more details.
Before thinking about which interface to implement, first clarify what
approach you actually need for ARM. I don't think that arch is as weird
as x86. Virtualization-wise it will rather be close to PowerPC e.g. And
for PowerPC (440) there is already kvm support...
But even if you had to implement a KQEMU-comparable VMM for ARM, you
should definitely use KVM's interface and infrastructure (which goes
beyond KQEMU). Rather extend it if that's required. Only that way your
work would have a chance to become mainline and benefit from the ongoing
development in KVM and QEMU. Believe us. :)
Jan
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 257 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] Re: Status on ARM host cpu
2008-11-15 15:12 ` [Qemu-devel] " Steffen Liebergeld
2008-11-15 22:21 ` Jan Kiszka
@ 2008-11-17 16:32 ` Hollis Blanchard
1 sibling, 0 replies; 5+ messages in thread
From: Hollis Blanchard @ 2008-11-17 16:32 UTC (permalink / raw)
To: qemu-devel
On Sat, Nov 15, 2008 at 9:12 AM, Steffen Liebergeld <usenet@gmx.eu> wrote:
> Hi Paul,
>
> Paul Brook <paul@codesourcery.com> schrieb:
>> On Friday 14 November 2008, Steffen Liebergeld wrote:
>>> Hi,
>>>
>>> I am currently researching of whether or not it is feasible to port kqemu
>>> to the ARM platform. The website says qemu on ARM hosts is in
>>> "testing"-state. Does that still apply to the latest svn-Version?
>>
>> Should just about work, though you should expect bugs.
>
>> However I advise using KVM and not kqemu. KVM has already been merged to
>> upstream kernels, and the chances of getting another hypervisor interface
>> merged are approximately zero.
>
> KVM is not an option for me (and is not available for the ARM-platform).
>
> I plan to port kqemu for the ARM-platform. Do have any estimates, for how much
> work would be needed to adopt the kqemu-Interface of qemu (which is
> x86-centric) to ARM (ignoring the effort needed to port the
> kqemu-kernel-module)?
To expand on what Jan said, I've implemented KVM on PowerPC 440 core,
which has no hardware virtualization support. I expect you're in the
same situation on ARM.
Basically you execute most guest instructions natively in hardware,
running in user mode. When the guest kernel attempts to perform a
privileged operation, you trap to supervisor mode and emulate it.
(Optionally, you can also patch the guest to prevent it from
attempting that operation in the first place.)
This is very feasible given the KVM interface -- the 440 support is
already working and merged upstream. I would strongly recommend
working with KVM instead of kqemu, if for no other reason than KVM has
a development community which can help you, and kqemu doesn't.
-Hollis
^ permalink raw reply [flat|nested] 5+ messages in thread