|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] [PATCH] Calculate correct instruction length for data-fa
On 30 Apr 2006, at 02:37, Leendert van Doorn wrote:
How does this work now? Do we really have two copies of each device
model? I doubt that's implemented safely.
Right now the realmode code runs inside the VMX partition where it is
partially emulated by vmxassist. So all accesses to the emulated
devices
go through the hypervisor first before they (potentially) end up in
qemu-dm. When a transition is made to 32/64-bit code all the
initialized
device state is still there.
Ah yes, I forgot that the mmio decoder stuff in Xen handles real mode.
So that means that currently each device model is either implemented in
Xen or in qemu-dm, but not both (now that the heinous split PIT device
model is gone). That's a nice state of affairs.
The problem of keeping the the hypervisor state and the qemu-dm state
in
sync is introduced when we alternate between emulation and real
execution. This becomes more interesting when we consider MP guests
where one CPU is running inside the emulator and another on the real
hardware.
It'd obviously be better avoided altogether, unless we have to perform
horrible contortions to do so, or if doing so would hurt performance of
operations that we care about.
Don't get me wrong by the way: I do think that leveraging qemu's full
emulator, at least to get us out of the stickiest situations, is a very
good idea. I'm only concerned about some of the finer details.
-- Keir
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- RE: [Xen-devel] [PATCH] Calculate correct instruction length for data-fault VM exits on VT-x systems, (continued)
|
|
|
|
|