|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] Re: Crash with c/s 20097 (x86 vmx: Update EIP when appropria
On 02/12/2009 11:47, "Tim Deegan" <Tim.Deegan@xxxxxxxxxxxxx> wrote:
> The __get_instruction_length() _isn't_ safe in those cases where we
> later explicitly set inst_len to zero (and possibly in other cases).
Argh, stupid, and probably my mistake. I'll push the
__get_instruction_length() inside the if()s.
> The cases of VM exits encountered during delivery of a software
> interrupt, privileged software exception, or software exception include
> those encountered during delivery of events injected as part of VM
> entry (see Section 22.5.1.2). If the original event was injected as
> part of VM entry, this field receives the value of the VM-entry
> instruction length.
>
> Does that mean that if we inject a fault and the guest routes it through
> a task switch gate, we'll see the length of VMENTER here? (And should
> we be advancing EIP in that case anyway?)
Fortunately we never inject software interrupts or exceptions. I reworked
the code to avoid that a long time ago, due to just such concerns. Possibly
we should even ASSERT as such in the event-injection functions.
-- Keir
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|