Commit 1e702d9a authored by Alex Williamson's avatar Alex Williamson Committed by Marcelo Tosatti

KVM: struct kvm_memory_slot.id -> short

We're currently offering a whopping 32 memory slots to user space, an
int is a bit excessive for storing this.  We would like to increase
our memslots, but SHRT_MAX should be more than enough.
Reviewed-by: default avatarGleb Natapov <gleb@redhat.com>
Signed-off-by: default avatarAlex Williamson <alex.williamson@redhat.com>
Signed-off-by: default avatarMarcelo Tosatti <mtosatti@redhat.com>
parent 6104f472
...@@ -270,7 +270,7 @@ struct kvm_memory_slot { ...@@ -270,7 +270,7 @@ struct kvm_memory_slot {
struct kvm_arch_memory_slot arch; struct kvm_arch_memory_slot arch;
unsigned long userspace_addr; unsigned long userspace_addr;
u32 flags; u32 flags;
int id; short id;
bool user_alloc; bool user_alloc;
}; };
...@@ -330,7 +330,7 @@ struct kvm_memslots { ...@@ -330,7 +330,7 @@ struct kvm_memslots {
u64 generation; u64 generation;
struct kvm_memory_slot memslots[KVM_MEM_SLOTS_NUM]; struct kvm_memory_slot memslots[KVM_MEM_SLOTS_NUM];
/* The mapping table from slot id to the index in memslots[]. */ /* The mapping table from slot id to the index in memslots[]. */
int id_to_index[KVM_MEM_SLOTS_NUM]; short id_to_index[KVM_MEM_SLOTS_NUM];
}; };
struct kvm { struct kvm {
......
...@@ -474,6 +474,8 @@ static struct kvm *kvm_create_vm(unsigned long type) ...@@ -474,6 +474,8 @@ static struct kvm *kvm_create_vm(unsigned long type)
INIT_HLIST_HEAD(&kvm->irq_ack_notifier_list); INIT_HLIST_HEAD(&kvm->irq_ack_notifier_list);
#endif #endif
BUILD_BUG_ON(KVM_MEM_SLOTS_NUM > SHRT_MAX);
r = -ENOMEM; r = -ENOMEM;
kvm->memslots = kzalloc(sizeof(struct kvm_memslots), GFP_KERNEL); kvm->memslots = kzalloc(sizeof(struct kvm_memslots), GFP_KERNEL);
if (!kvm->memslots) if (!kvm->memslots)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment