]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
KVM: Prevent overflow in largepages calculation
authorAvi Kivity <avi@redhat.com>
Mon, 8 Jun 2009 12:55:21 +0000 (15:55 +0300)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 2 Jul 2009 23:49:33 +0000 (16:49 -0700)
commit 09f8ca74ae6c2d78b2c7f6c0751ed0cbe815a3d9 upstream.

If userspace specifies a memory slot that is larger than 8 petabytes, it
could overflow the largepages variable.

Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
virt/kvm/kvm_main.c

index cf4bdc97faa49036a63df30abcb1d37d1f348e09..acef475277119734ddb9eb6824d9e52776d10510 100644 (file)
@@ -920,8 +920,7 @@ int __kvm_set_memory_region(struct kvm *kvm,
        int r;
        gfn_t base_gfn;
        unsigned long npages, ugfn;
-       int largepages;
-       unsigned long i;
+       unsigned long largepages, i;
        struct kvm_memory_slot *memslot;
        struct kvm_memory_slot old, new;