summaryrefslogtreecommitdiffstats
path: root/arch/s390/kvm
diff options
context:
space:
mode:
authorNick Wang <jfwang@us.ibm.com>2013-03-25 17:22:57 +0100
committerGleb Natapov <gleb@redhat.com>2013-04-02 16:14:51 +0300
commitdd2887e7c36d0be986ef17a9dbec904e3e334566 (patch)
tree9efff383798f9b94967d322cbaacbe218f27da08 /arch/s390/kvm
parent3188bf6b809ba5e7df7b9f000634f08e8abbb76a (diff)
downloadlinux-stable-dd2887e7c36d0be986ef17a9dbec904e3e334566.tar.gz
linux-stable-dd2887e7c36d0be986ef17a9dbec904e3e334566.tar.bz2
linux-stable-dd2887e7c36d0be986ef17a9dbec904e3e334566.zip
KVM: s390: Remove the sanity checks for kvm memory slot
To model the standby memory with memory_region_add_subregion and friends, the guest would have one or more regions of ram. Remove the check allowing only one memory slot and the check requiring the real address of memory slot starts at zero. Signed-off-by: Nick Wang <jfwang@us.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Gleb Natapov <gleb@redhat.com>
Diffstat (limited to 'arch/s390/kvm')
-rw-r--r--arch/s390/kvm/kvm-s390.c16
1 files changed, 4 insertions, 12 deletions
diff --git a/arch/s390/kvm/kvm-s390.c b/arch/s390/kvm/kvm-s390.c
index d05a59c1eea7..b322ff15751d 100644
--- a/arch/s390/kvm/kvm-s390.c
+++ b/arch/s390/kvm/kvm-s390.c
@@ -977,18 +977,10 @@ int kvm_arch_prepare_memory_region(struct kvm *kvm,
struct kvm_userspace_memory_region *mem,
enum kvm_mr_change change)
{
- /* A few sanity checks. We can have exactly one memory slot which has
- to start at guest virtual zero and which has to be located at a
- page boundary in userland and which has to end at a page boundary.
- The memory in userland is ok to be fragmented into various different
- vmas. It is okay to mmap() and munmap() stuff in this slot after
- doing this call at any time */
-
- if (mem->slot)
- return -EINVAL;
-
- if (mem->guest_phys_addr)
- return -EINVAL;
+ /* A few sanity checks. We can have memory slots which have to be
+ located/ended at a segment boundary (1MB). The memory in userland is
+ ok to be fragmented into various different vmas. It is okay to mmap()
+ and munmap() stuff in this slot after doing this call at any time */
if (mem->userspace_addr & 0xffffful)
return -EINVAL;