aboutsummaryrefslogtreecommitdiff
path: root/target-s390x
diff options
context:
space:
mode:
authorMarkus Armbruster <armbru@redhat.com>2013-07-31 15:11:11 +0200
committerAnthony Liguori <anthony@codemonkey.ws>2013-09-12 11:45:32 -0500
commit39228250ce6cf67eb1c3799791d271f53c5c6347 (patch)
treea9fb3a2fb09d86c1014c296593cd5d70ea4bf8b1 /target-s390x
parente1e84ba050538bae24393e40b737078ecad99747 (diff)
downloadqemu-39228250ce6cf67eb1c3799791d271f53c5c6347.zip
qemu-39228250ce6cf67eb1c3799791d271f53c5c6347.tar.gz
qemu-39228250ce6cf67eb1c3799791d271f53c5c6347.tar.bz2
exec: Don't abort when we can't allocate guest memory
We abort() on memory allocation failure. abort() is appropriate for programming errors. Maybe most memory allocation failures are programming errors, maybe not. But guest memory allocation failure isn't, and aborting when the user asks for more memory than we can provide is not nice. exit(1) instead, and do it in just one place, so the error message is consistent. Tested-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Andreas Färber <afaerber@suse.de> Acked-by: Laszlo Ersek <lersek@redhat.com> Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Acked-by: Christian Borntraeger <borntraeger@de.ibm.com> Message-id: 1375276272-15988-8-git-send-email-armbru@redhat.com Signed-off-by: Anthony Liguori <anthony@codemonkey.ws>
Diffstat (limited to 'target-s390x')
-rw-r--r--target-s390x/kvm.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c
index 0b75164..4923e0a 100644
--- a/target-s390x/kvm.c
+++ b/target-s390x/kvm.c
@@ -332,11 +332,7 @@ static void *legacy_s390_alloc(ram_addr_t size)
mem = mmap((void *) 0x800000000ULL, size,
PROT_EXEC|PROT_READ|PROT_WRITE,
MAP_SHARED | MAP_ANONYMOUS | MAP_FIXED, -1, 0);
- if (mem == MAP_FAILED) {
- fprintf(stderr, "Allocating RAM failed\n");
- abort();
- }
- return mem;
+ return mem == MAP_FAILED ? NULL : mem;
}
int kvm_arch_insert_sw_breakpoint(CPUState *cs, struct kvm_sw_breakpoint *bp)