The current arithmetic instruction emulation is fairly clumsy: after
decode, each instruction gets a switch (size), and for every size
we fetch the operands, prepare flags, emulate the instruction, then store
back the flags and operands.
This patchset simplifies things by moving everything into co
We emulate arithmetic opcodes by executing a "similar" (same operation,
different operands) on the cpu. This ensures accurate emulation, esp. wrt.
eflags. However, the prologue and epilogue around the opcode is fairly long,
consisting of a switch (for the operand size) and code to load and save t
Signed-off-by: Avi Kivity
---
arch/x86/kvm/emulate.c | 25 +
1 file changed, 25 insertions(+)
diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
index dd71567..42c53c8 100644
--- a/arch/x86/kvm/emulate.c
+++ b/arch/x86/kvm/emulate.c
@@ -24,6 +24,7 @@
#include "
Signed-off-by: Avi Kivity
---
arch/x86/kvm/emulate.c | 20
1 file changed, 8 insertions(+), 12 deletions(-)
diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
index fe113fb..2af0c44 100644
--- a/arch/x86/kvm/emulate.c
+++ b/arch/x86/kvm/emulate.c
@@ -3069,16 +3069,
Signed-off-by: Avi Kivity
---
arch/x86/kvm/emulate.c | 17 -
1 file changed, 4 insertions(+), 13 deletions(-)
diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
index 2af0c44..09dbdc5 100644
--- a/arch/x86/kvm/emulate.c
+++ b/arch/x86/kvm/emulate.c
@@ -2050,17 +2050,8 @
Instead of disabling writeback via OP_NONE, just specify NoWrite.
Signed-off-by: Avi Kivity
---
arch/x86/kvm/emulate.c | 4
1 file changed, 4 insertions(+)
diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
index 42c53c8..fe113fb 100644
--- a/arch/x86/kvm/emulate.c
+++ b/arch/x86
Opcodes:
TEST
CMP
ADD
ADC
SUB
SBB
XOR
OR
AND
Signed-off-by: Avi Kivity
---
arch/x86/kvm/emulate.c | 112 +++--
1 file changed, 34 insertions(+), 78 deletions(-)
diff --git a/arch/
Signed-off-by: Avi Kivity
---
arch/x86/kvm/emulate.c | 12
1 file changed, 12 insertions(+)
diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
index 09dbdc5..9a39689 100644
--- a/arch/x86/kvm/emulate.c
+++ b/arch/x86/kvm/emulate.c
@@ -465,6 +465,17 @@ static void invalidat
On Thu, Jan 03, 2013 at 11:19:18AM -0200, Marcelo Tosatti wrote:
> On Thu, Jan 03, 2013 at 10:11:53AM +0200, Gleb Natapov wrote:
> > > FreeBSD 9.1 with -smp 2.
> > I cannot reproduce. I do see boot failure on the next branch with 9.[01]
> > 64 bit -smp 2 here, but it is caused but segment registers
On 01/04/2013 12:47 PM, Avi Kivity wrote:
> Signed-off-by: Avi Kivity
> ---
> arch/x86/kvm/emulate.c | 12
> 1 file changed, 12 insertions(+)
>
> diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
> index 09dbdc5..9a39689 100644
> --- a/arch/x86/kvm/emulate.c
> +++ b/arch/x
There are some changes from Gleb's review:
- poss the point of target_gfn_is_pt into FNAME(is_self_change_mapping)
to let the return value be more clearer
- fold some changes of patch 5 into patch 4
- remove vcpu.arch.fault_addr
There are some test cases to trigger the bugs which are fixed in th
If the write-fault access is from supervisor and CR0.WP is not set on the
vcpu, kvm will fix it by adjusting pte access - it sets the W bit on pte
and clears U bit. This is the chance that kvm can change pte access from
readonly to writable
Unfortunately, the pte access is the access of 'direct' s
We have two issues in current code:
- if target gfn is used as its page table, guest will refault then kvm will use
small page size to map it. We need two #PF to fix its shadow page table
- sometimes, say a exception is triggered during vm-exit caused by #PF
(see handle_exception() in vmx.c),
Little cleanup for reexecute_instruction, also use gpa_to_gfn in
retry_instruction
Signed-off-by: Xiao Guangrong
---
arch/x86/kvm/x86.c | 13 ++---
1 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 1c9c834..ad39018 100644
--- a
Currently, reexecute_instruction refused to retry all instructions. If
nested npt is used, the emulation may be caused by shadow page, it can
be fixed by dropping the shadow page
Signed-off-by: Xiao Guangrong
---
arch/x86/kvm/x86.c | 28 ++--
1 files changed, 22 inserti
The current reexecute_instruction can not well detect the failed instruction
emulation. It allows guest to retry all the instructions except it accesses
on error pfn
For example, some cases are nested-write-protect - if the page we want to
write is used as PDE but it chains to itself. Under this c
Signed-off-by: Avi Kivity
---
x86/emulator.c | 26 ++
1 file changed, 26 insertions(+)
diff --git a/x86/emulator.c b/x86/emulator.c
index c39027a..a128e13 100644
--- a/x86/emulator.c
+++ b/x86/emulator.c
@@ -863,6 +863,31 @@ static void test_ltr(volatile uint16_t *mem)
The current arithmetic instruction emulation is fairly clumsy: after
decode, each instruction gets a switch (size), and for every size
we fetch the operands, prepare flags, emulate the instruction, then store
back the flags and operands.
This patchset simplifies things by moving everything into co
We emulate arithmetic opcodes by executing a "similar" (same operation,
different operands) on the cpu. This ensures accurate emulation, esp. wrt.
eflags. However, the prologue and epilogue around the opcode is fairly long,
consisting of a switch (for the operand size) and code to load and save t
Signed-off-by: Avi Kivity
---
arch/x86/kvm/emulate.c | 25 +
1 file changed, 25 insertions(+)
diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
index dd71567..42c53c8 100644
--- a/arch/x86/kvm/emulate.c
+++ b/arch/x86/kvm/emulate.c
@@ -24,6 +24,7 @@
#include "
Instead of disabling writeback via OP_NONE, just specify NoWrite.
Signed-off-by: Avi Kivity
---
arch/x86/kvm/emulate.c | 4
1 file changed, 4 insertions(+)
diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
index 42c53c8..fe113fb 100644
--- a/arch/x86/kvm/emulate.c
+++ b/arch/x86
Signed-off-by: Avi Kivity
---
arch/x86/kvm/emulate.c | 20
1 file changed, 8 insertions(+), 12 deletions(-)
diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
index fe113fb..2af0c44 100644
--- a/arch/x86/kvm/emulate.c
+++ b/arch/x86/kvm/emulate.c
@@ -3069,16 +3069,
Signed-off-by: Avi Kivity
---
arch/x86/kvm/emulate.c | 17 -
1 file changed, 4 insertions(+), 13 deletions(-)
diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
index 2af0c44..09dbdc5 100644
--- a/arch/x86/kvm/emulate.c
+++ b/arch/x86/kvm/emulate.c
@@ -2050,17 +2050,8 @
Signed-off-by: Avi Kivity
---
arch/x86/kvm/emulate.c | 12
1 file changed, 12 insertions(+)
diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
index 09dbdc5..3b5d4dd 100644
--- a/arch/x86/kvm/emulate.c
+++ b/arch/x86/kvm/emulate.c
@@ -465,6 +465,17 @@ static void invalidat
Opcodes:
TEST
CMP
ADD
ADC
SUB
SBB
XOR
OR
AND
Signed-off-by: Avi Kivity
---
arch/x86/kvm/emulate.c | 112 +++--
1 file changed, 34 insertions(+), 78 deletions(-)
diff --git a/arch/
The kvm_mmu_op feature was removed from the kernel since v3.3 (released
in March 2012), it was marked for removal since January 2011 and it's
slower than shadow or hardware assisted paging (see kernel commit
fb92045843). It doesn't make sense to keep it enabled by default.
Also, keeping it enabled
The kvm_mmu_op feature was removed from the kernel since v3.3 (released
in March 2012), it was marked for removal since January 2011 and it's
slower than shadow or hardware assisted paging (see kernel commit
fb92045843). It doesn't make sense to keep it enabled by default.
Also, keeping it enabled
The -cpu check/enforce warnings are printing incorrect information about the
missing flags. There are no feature flags on CPUID leaves 0 and 0x8000, but
there were references to 0 and 0x8000 in the table at
kvm_check_features_against_host().
This changes the model_features_t struct to cont
This will be necessary once kvm_check_features_against_host() starts
using KVM-specific definitions (so it won't compile anymore if
CONFIG_KVM is not set).
Signed-off-by: Eduardo Habkost
---
target-i386/cpu.c | 4
1 file changed, 4 insertions(+)
diff --git a/target-i386/cpu.c b/target-i386
This changes the -cpu check/enforce code to work as it should: it will
check every single CPUID bit to make sure it is supported by the host.
The changes are a bit intrusive, but:
- The longer we take to make "enforce" strict as it should (and make libvirt
finally use it), more users will hav
This adds the following feature words to the list of flags to be checked
by kvm_check_features_against_host():
- cpuid_7_0_ebx_features
- ext4_features
- kvm_features
- svm_features
This will ensure the "enforce" flag works as it should: it won't allow
QEMU to be started unless every flag tha
When using -cpu host, we don't need to use the kvm_default_features
variable, as the user is explicitly asking QEMU to enable all feature
supported by the host.
This changes the kvm_cpu_fill_host() code to use GET_SUPPORTED_CPUID to
initialize the kvm_features field, so we get all host KVM feature
I have no idea why PPRO_FEATURES was being ignored on the check of the
CPUID.8001H.EDX bits. I believe it was a mistake, and it was
supposed to be ~(PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES) or just
~CPUID_EXT2_AMD_ALIASES, because some time ago kvm_cpu_fill_host() used
the CPUID instruction dire
We don't need any hack to ignore CPUID_EXT_HYPERVISOR anymore, because
kvm_arch_get_supported_cpuid() now set CPUID_EXT_HYPERVISOR properly.
So, this shouldn't introduce any behavior change, but it makes the code
simpler.
Signed-off-by: Eduardo Habkost
---
My goal is to eliminate the check_feat f
When nested SVM is supported, the kernel returns the SVM flag on
GET_SUPPORTED_CPUID[1], so we can check the SVM flag safely on
kvm_check_features_against_host().
I don't know why the original code ignored the SVM flag. Maybe it was
because kvm_cpu_fill_host() used the CPUID instruction directly i
The existing -cpu host code simply set every bit inside svm_features
(initializing it to -1), and that makes it impossible to make the
enforce/check options work properly when the user asks for SVM features
explicitly in the command-line.
So, instead of initializing svm_features to -1, use GET_SUP
Now that all entries have check_feat=~0 on
kvm_check_features_against_host(), we can eliminate check_feat entirely
and make the code check all bits.
This patch shouldn't introduce any behavior change, as check_feat is set
to ~0 on all entries.
Signed-off-by: Eduardo Habkost
---
target-i386/cpu.
This is a cleanup that tries to solve two small issues:
- We don't need a separate kvm_pv_eoi_features variable just to keep a
constant calculated at compile-time, and this style would require
adding a separate variable (that's declared twice because of the
CONFIG_KVM ifdef) for each fea
The FSL MPIC implementation contains a feature called "external proxy
facility" which allows for interrupts to be acknowledged in the MPIC
as soon as a core accepts its pending external interrupt.
This patch set implements all the necessary pieces to support this
from the kernel space side.
Alexa
When injecting an interrupt into guest context, we usually don't need
to check for requests anymore. At least not until today.
With the introduction of EPR, we will have to create a request when the
guest has successfully accepted an external interrupt though.
So we need to prepare the interrupt
The EPR register is potentially valid for PR KVM as well, so we need
to emulate accesses to it. It's only defined for reading, so only
handle the mfspr case.
Signed-off-by: Alexander Graf
---
arch/powerpc/kvm/booke_emulate.c |3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --gi
The External Proxy Facility in FSL BookE chips allows the interrupt
controller to automatically acknowledge an interrupt as soon as a
core gets its pending external interrupt delivered.
Today, user space implements the interrupt controller, so we need to
check on it during such a cycle.
This patc
We need to be able to read and write the contents of the EPR register
from user space.
This patch implements that logic through the ONE_REG API and declares
its (never implemented) SREGS counterpart as deprecated.
Signed-off-by: Alexander Graf
---
Documentation/virtual/kvm/api.txt |1 +
a
On 01/04/2013 11:36:37 AM, Alexander Graf wrote:
When injecting an interrupt into guest context, we usually don't need
to check for requests anymore. At least not until today.
With the introduction of EPR, we will have to create a request when
the
guest has successfully accepted an external i
On 01/04/2013 11:36:38 AM, Alexander Graf wrote:
The EPR register is potentially valid for PR KVM as well, so we need
to emulate accesses to it. It's only defined for reading, so only
handle the mfspr case.
Signed-off-by: Alexander Graf
---
arch/powerpc/kvm/booke_emulate.c |3 +++
1 files
On 01/04/2013 11:36:40 AM, Alexander Graf wrote:
We need to be able to read and write the contents of the EPR register
from user space.
This patch implements that logic through the ONE_REG API and declares
its (never implemented) SREGS counterpart as deprecated.
QEMU already uses SREGS to read
On 01/04/2013 11:36:39 AM, Alexander Graf wrote:
diff --git a/arch/powerpc/kvm/booke.c b/arch/powerpc/kvm/booke.c
index 4ae83f9..363301f 100644
--- a/arch/powerpc/kvm/booke.c
+++ b/arch/powerpc/kvm/booke.c
@@ -306,7 +306,7 @@ static int kvmppc_booke_irqprio_deliver(struct
kvm_vcpu *vcpu,
{
On Fri, Jan 4, 2013 at 5:12 AM, Jason Wang wrote:
> On 12/29/2012 01:52 AM, Blue Swirl wrote:
>> On Fri, Dec 28, 2012 at 10:32 AM, Jason Wang wrote:
>>> This patch implements both userspace and vhost support for multiple queue
>>> virtio-net (VIRTIO_NET_F_MQ). This is done by introducing an array
On Fri, Jan 4, 2013 at 2:52 PM, Eduardo Habkost wrote:
> This is a cleanup that tries to solve two small issues:
>
> - We don't need a separate kvm_pv_eoi_features variable just to keep a
>constant calculated at compile-time, and this style would require
>adding a separate variable (that'
On Fri, Jan 4, 2013 at 2:52 PM, Eduardo Habkost wrote:
> The kvm_mmu_op feature was removed from the kernel since v3.3 (released
> in March 2012), it was marked for removal since January 2011 and it's
> slower than shadow or hardware assisted paging (see kernel commit
> fb92045843). It doesn't mak
Hi,
This is an automated message generated from the QEMU Patches.
Thank you for submitting this patch. This patch no longer applies to qemu.git.
This may have occurred due to:
1) Changes in mainline requiring your patch to be rebased and re-tested.
2) Sending the mail using a tool other t
On Fri, Jan 04, 2013 at 08:47:07PM +, Blue Swirl wrote:
> > {
> > -kvm_default_features |= kvm_pv_eoi_features;
> > +#ifdef CONFIG_KVM
> > +if (kvm_enabled())
>
> Missing braces, please read CODING_STYLE and use checkpatch.pl to find
> problems in patches.
Sorry (again). I will soon
On Fri, Jan 4, 2013 at 3:37 PM, Eduardo Habkost wrote:
> The -cpu check/enforce warnings are printing incorrect information about the
> missing flags. There are no feature flags on CPUID leaves 0 and 0x8000,
> but
> there were references to 0 and 0x8000 in the table at
> kvm_check_feature
On Fri, Jan 04, 2013 at 07:02:17PM -0200, Eduardo Habkost wrote:
> On Fri, Jan 04, 2013 at 08:47:07PM +, Blue Swirl wrote:
> > > {
> > > -kvm_default_features |= kvm_pv_eoi_features;
> > > +#ifdef CONFIG_KVM
> > > +if (kvm_enabled())
> >
> > Missing braces, please read CODING_STYLE an
On Fri, Jan 04, 2013 at 08:48:42PM +, Blue Swirl wrote:
[...]
> > +/* machine init function for pc-0.14 - pc-1.2 */
> > static void pc_init_pci(QEMUMachineInitArgs *args)
> > {
> > ram_addr_t ram_size = args->ram_size;
> > @@ -232,12 +233,20 @@ static void pc_init_pci(QEMUMachineInitArgs
Hi all,
when I run KVM with this command the Windows 8 installation stops with
error code 0x005D:
kvm -m 1024 -hda win8.img -cdrom windows_8_x86.iso
After adding the option "-cpu host" the installation proceeds to a black
screen and hangs.
With Virtualbox the installation succeeds.
The host
The -cpu check/enforce warnings are printing incorrect information about the
missing flags. There are no feature flags on CPUID leaves 0 and 0x8000, but
there were references to 0 and 0x8000 in the table at
kvm_check_features_against_host().
This changes the model_features_t struct to cont
This adds the following feature words to the list of flags to be checked
by kvm_check_features_against_host():
- cpuid_7_0_ebx_features
- ext4_features
- kvm_features
- svm_features
This will ensure the "enforce" flag works as it should: it won't allow
QEMU to be started unless every flag tha
On Fri, Jan 04, 2013 at 09:55:40PM +0800, Xiao Guangrong wrote:
> Little cleanup for reexecute_instruction, also use gpa_to_gfn in
> retry_instruction
>
> Signed-off-by: Xiao Guangrong
> ---
> arch/x86/kvm/x86.c | 13 ++---
> 1 files changed, 6 insertions(+), 7 deletions(-)
>
> diff -
On Fri, Jan 04, 2013 at 09:56:59PM +0800, Xiao Guangrong wrote:
> The current reexecute_instruction can not well detect the failed instruction
> emulation. It allows guest to retry all the instructions except it accesses
> on error pfn
>
> For example, some cases are nested-write-protect - if the
When using -cpu host, we don't need to use the kvm_default_features
variable, as the user is explicitly asking QEMU to enable all feature
supported by the host.
This changes the kvm_cpu_fill_host() code to use GET_SUPPORTED_CPUID to
initialize the kvm_features field, so we get all host KVM feature
This is a cleanup that tries to solve two small issues:
- We don't need a separate kvm_pv_eoi_features variable just to keep a
constant calculated at compile-time, and this style would require
adding a separate variable (that's declared twice because of the
CONFIG_KVM ifdef) for each fea
The existing -cpu host code simply set every bit inside svm_features
(initializing it to -1), and that makes it impossible to make the
enforce/check options work properly when the user asks for SVM features
explicitly in the command-line.
So, instead of initializing svm_features to -1, use GET_SUP
On 04.01.2013, at 21:08, Scott Wood wrote:
> On 01/04/2013 11:36:40 AM, Alexander Graf wrote:
>> We need to be able to read and write the contents of the EPR register
>> from user space.
>> This patch implements that logic through the ONE_REG API and declares
>> its (never implemented) SREGS coun
This will be necessary once kvm_check_features_against_host() starts
using KVM-specific definitions (so it won't compile anymore if
CONFIG_KVM is not set).
Signed-off-by: Eduardo Habkost
---
target-i386/cpu.c | 4
1 file changed, 4 insertions(+)
diff --git a/target-i386/cpu.c b/target-i386
We don't need any hack to ignore CPUID_EXT_HYPERVISOR anymore, because
kvm_arch_get_supported_cpuid() now set CPUID_EXT_HYPERVISOR properly.
So, this shouldn't introduce any behavior change, but it makes the code
simpler.
Signed-off-by: Eduardo Habkost
---
My goal is to eliminate the check_feat f
Changes on v2:
- Now both the kvm_mmu-disable and -cpu "enforce" changes are on the same
series
- Coding style fixes
Git tree for reference:
git://github.com/ehabkost/qemu-hacks.git cpu-enforce-all.v2
https://github.com/ehabkost/qemu-hacks/tree/cpu-enforce-all.v2
Patches 1-2 disable the
On 04.01.2013, at 20:40, Scott Wood wrote:
> On 01/04/2013 11:36:37 AM, Alexander Graf wrote:
>> When injecting an interrupt into guest context, we usually don't need
>> to check for requests anymore. At least not until today.
>> With the introduction of EPR, we will have to create a request when
On 01/04/2013 04:55:34 PM, Alexander Graf wrote:
On 04.01.2013, at 21:08, Scott Wood wrote:
> On 01/04/2013 11:36:40 AM, Alexander Graf wrote:
>> We need to be able to read and write the contents of the EPR
register
>> from user space.
>> This patch implements that logic through the ONE_REG
On 05.01.2013, at 00:03, Scott Wood wrote:
> On 01/04/2013 04:55:34 PM, Alexander Graf wrote:
>> On 04.01.2013, at 21:08, Scott Wood wrote:
>> > On 01/04/2013 11:36:40 AM, Alexander Graf wrote:
>> >> We need to be able to read and write the contents of the EPR register
>> >> from user space.
>> >
On 04.01.2013, at 20:50, Scott Wood wrote:
> On 01/04/2013 11:36:38 AM, Alexander Graf wrote:
>> The EPR register is potentially valid for PR KVM as well, so we need
>> to emulate accesses to it. It's only defined for reading, so only
>> handle the mfspr case.
>> Signed-off-by: Alexander Graf
>>
The FSL MPIC implementation contains a feature called "external proxy
facility" which allows for interrupts to be acknowledged in the MPIC
as soon as a core accepts its pending external interrupt.
This patch set implements all the necessary pieces to support this
from the kernel space side.
v1 ->
The External Proxy Facility in FSL BookE chips allows the interrupt
controller to automatically acknowledge an interrupt as soon as a
core gets its pending external interrupt delivered.
Today, user space implements the interrupt controller, so we need to
check on it during such a cycle.
This patc
The EPR register is potentially valid for PR KVM as well, so we need
to emulate accesses to it. It's only defined for reading, so only
handle the mfspr case.
Signed-off-by: Alexander Graf
---
arch/powerpc/kvm/booke_emulate.c |3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --gi
We need to be able to read and write the contents of the EPR register
from user space.
This patch implements that logic through the ONE_REG API and declares
its (never implemented) SREGS counterpart as deprecated.
Signed-off-by: Alexander Graf
---
Documentation/virtual/kvm/api.txt |1 +
a
From: Mihai Caraman
When injecting an interrupt into guest context, we usually don't need
to check for requests anymore. At least not until today.
With the introduction of EPR, we will have to create a request when the
guest has successfully accepted an external interrupt though.
So we need to
I have no idea why PPRO_FEATURES was being ignored on the check of the
CPUID.8001H.EDX bits. I believe it was a mistake, and it was
supposed to be ~(PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES) or just
~CPUID_EXT2_AMD_ALIASES, because some time ago kvm_cpu_fill_host() used
the CPUID instruction dire
Now that all entries have check_feat=~0 on
kvm_check_features_against_host(), we can eliminate check_feat entirely
and make the code check all bits.
This patch shouldn't introduce any behavior change, as check_feat is set
to ~0 on all entries.
Signed-off-by: Eduardo Habkost
---
Changes v2:
- Co
The kvm_mmu_op feature was removed from the kernel since v3.3 (released
in March 2012), it was marked for removal since January 2011 and it's
slower than shadow or hardware assisted paging (see kernel commit
fb92045843). It doesn't make sense to keep it enabled by default.
Also, keeping it enabled
When nested SVM is supported, the kernel returns the SVM flag on
GET_SUPPORTED_CPUID[1], so we can check the SVM flag safely on
kvm_check_features_against_host().
I don't know why the original code ignored the SVM flag. Maybe it was
because kvm_cpu_fill_host() used the CPUID instruction directly i
On 01/05/2013 06:21 AM, Marcelo Tosatti wrote:
> On Fri, Jan 04, 2013 at 09:55:40PM +0800, Xiao Guangrong wrote:
>> Little cleanup for reexecute_instruction, also use gpa_to_gfn in
>> retry_instruction
>>
>> Signed-off-by: Xiao Guangrong
>> ---
>> arch/x86/kvm/x86.c | 13 ++---
>> 1 fil
81 matches
Mail list logo