Re: [PATCH 15/23] KVM: do not inject #PF in (read|write)_emulated() callbacks

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

 



On 04/28/2010 12:21 PM, Gleb Natapov wrote:
On Wed, Apr 28, 2010 at 12:11:41PM +0300, Avi Kivity wrote:
On 04/27/2010 03:15 PM, Gleb Natapov wrote:
Return error to x86 emulator instead of injection exception behind its back.

Signed-off-by: Gleb Natapov<gleb@xxxxxxxxxx>
---
  arch/x86/include/asm/kvm_emulate.h |    3 +++
  arch/x86/kvm/emulate.c             |   12 +++++++++++-
  arch/x86/kvm/x86.c                 |   28 ++++++++++++++--------------
  3 files changed, 28 insertions(+), 15 deletions(-)

diff --git a/arch/x86/include/asm/kvm_emulate.h b/arch/x86/include/asm/kvm_emulate.h
index ae4af86..b977ccf 100644
--- a/arch/x86/include/asm/kvm_emulate.h
+++ b/arch/x86/include/asm/kvm_emulate.h
@@ -94,6 +94,7 @@ struct x86_emulate_ops {
  	int (*read_emulated)(unsigned long addr,
  			     void *val,
  			     unsigned int bytes,
+			     unsigned int *error,
  			     struct kvm_vcpu *vcpu);

The fault may be at a different address than addr, if we cross a
page boundary.  Need a struct here.

Correct and you can find couple of FIXME in emulator.c that say so.
I'll fix that later. This is not the problem that was introduced by this
patch set.

OK.

  What do you mean we need struct here? Struct with
error code + error location?


Yes.


--
error compiling committee.c: too many arguments to function

--
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