Re: [PATCH 3/6] Emulator: Inject #PF when page was not found

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 17.05.2009, at 21:59, Avi Kivity <avi@xxxxxxxxxx> wrote:

Alexander Graf wrote:
If we couldn't find a page on read_emulated, it might be a good
idea to tell the guest about that and inject a #PF.

We do the same already for write faults. I don't know why it was
not implemented for reads.



I can't think why it was done for writes. Normally, a guest page fault would be trapped and reflected a long time before emulation, in FNAME(page_fault)(), after walk_addr().

Can you give some details on the situation? What instruction was executed, and why kvm tried to emulate it?

I remember it was something about accessing the apic with npt. Maybe the real problem was the restricted bit checking that made the emulated instruction behave differently from the real mmu.

I really need to start writing down why I did things when doing them :).

I can recheck if it still breaks without the inject.

Alex



(I guess it depends on the relative priority of svm instruction intercepts and the page fault intercept?)

--
Do not meddle in the internals of kernels, for they are subtle and quick to panic.

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux