diff options
author | Hillf Danton <dhillf@gmail.com> | 2010-09-18 08:41:02 +0800 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2010-10-24 10:52:59 +0200 |
commit | cb16a7b3872e9a806f16b1f09b59103fafc7b796 (patch) | |
tree | 255ee31572d138a2d1a54281881483654f02bf56 /arch | |
parent | a182d8737f0bdfb684b3255c8e266e71999e2225 (diff) | |
download | kernel_goldelico_gta04-cb16a7b3872e9a806f16b1f09b59103fafc7b796.zip kernel_goldelico_gta04-cb16a7b3872e9a806f16b1f09b59103fafc7b796.tar.gz kernel_goldelico_gta04-cb16a7b3872e9a806f16b1f09b59103fafc7b796.tar.bz2 |
KVM: MMU: fix counting of rmap entries in rmap_add()
It seems that rmap entries are under counted.
Signed-off-by: Hillf Danton <dhillf@gmail.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/kvm/mmu.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c index 3ce56bf..c94c432 100644 --- a/arch/x86/kvm/mmu.c +++ b/arch/x86/kvm/mmu.c @@ -632,6 +632,7 @@ static int rmap_add(struct kvm_vcpu *vcpu, u64 *spte, gfn_t gfn) desc->sptes[0] = (u64 *)*rmapp; desc->sptes[1] = spte; *rmapp = (unsigned long)desc | 1; + ++count; } else { rmap_printk("rmap_add: %p %llx many->many\n", spte, *spte); desc = (struct kvm_rmap_desc *)(*rmapp & ~1ul); @@ -644,7 +645,7 @@ static int rmap_add(struct kvm_vcpu *vcpu, u64 *spte, gfn_t gfn) desc = desc->more; } for (i = 0; desc->sptes[i]; ++i) - ; + ++count; desc->sptes[i] = spte; } return count; |