From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34097) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZaPg7-0003Ym-RF for qemu-devel@nongnu.org; Fri, 11 Sep 2015 10:51:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZaPg4-0002Hf-My for qemu-devel@nongnu.org; Fri, 11 Sep 2015 10:51:51 -0400 Received: from mx1.redhat.com ([209.132.183.28]:41342) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZaPg4-0002HA-GQ for qemu-devel@nongnu.org; Fri, 11 Sep 2015 10:51:48 -0400 From: Markus Armbruster Date: Fri, 11 Sep 2015 16:51:41 +0200 Message-Id: <1441983105-26376-1-git-send-email-armbru@redhat.com> Subject: [Qemu-devel] [PATCH 0/4] Don't abort when we can't allocate guest memory (again) List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: pbonzini@redhat.com, peter.crosthwaite@xilinx.com, hutao@cn.fujitsu.com Not nice: $ qemu-system-x86_64 -m 10000000 Unexpected error in ram_block_add() at /work/armbru/qemu/exec.c:1456: upstream-qemu: cannot set up guest memory 'pc.ram': Cannot allocate memory Aborted (core dumped) I fixed this in commit 3922825 for v1.7, but commit ef701d7 regressed it for v2.2, and now I'm fixing it again, only this time the fix is fifteen times bigger. Folks involved in the flawed commit cc'ed, so they can do penance by reviewing my fix ;-P PATCH 1/4's error_fatal obviously enables further simplifications. I got some in my local tree, but they're not ready, yet. Markus Armbruster (4): error: New error_fatal Fix bad error handling after memory_region_init_ram() loader: Fix memory_region_init_resizeable_ram() error handling memory: Fix bad error handling in memory_region_init_ram_ptr() hw/arm/armv7m.c | 2 +- hw/arm/exynos4210.c | 8 ++++---- hw/arm/highbank.c | 2 +- hw/arm/integratorcp.c | 2 +- hw/arm/mainstone.c | 2 +- hw/arm/musicpal.c | 2 +- hw/arm/omap1.c | 2 +- hw/arm/omap2.c | 2 +- hw/arm/omap_sx1.c | 4 ++-- hw/arm/palm.c | 2 +- hw/arm/pxa2xx.c | 8 ++++---- hw/arm/realview.c | 6 +++--- hw/arm/spitz.c | 2 +- hw/arm/stellaris.c | 4 ++-- hw/arm/stm32f205_soc.c | 4 ++-- hw/arm/tosa.c | 2 +- hw/arm/vexpress.c | 6 +++--- hw/arm/xilinx_zynq.c | 2 +- hw/arm/xlnx-zynqmp.c | 2 +- hw/block/onenand.c | 2 +- hw/core/loader.c | 2 +- hw/cris/axis_dev88.c | 2 +- hw/display/cg3.c | 4 ++-- hw/display/qxl.c | 6 +++--- hw/display/sm501.c | 2 +- hw/display/tc6393xb.c | 2 +- hw/display/tcx.c | 4 ++-- hw/display/vga.c | 2 +- hw/display/vmware_vga.c | 2 +- hw/i386/pc.c | 2 +- hw/i386/pc_sysfw.c | 4 ++-- hw/input/milkymist-softusb.c | 4 ++-- hw/m68k/an5206.c | 2 +- hw/m68k/mcf5208.c | 2 +- hw/microblaze/petalogix_ml605_mmu.c | 4 ++-- hw/microblaze/petalogix_s3adsp1800_mmu.c | 4 ++-- hw/mips/mips_fulong2e.c | 2 +- hw/mips/mips_jazz.c | 4 ++-- hw/mips/mips_malta.c | 2 +- hw/mips/mips_mipssim.c | 2 +- hw/mips/mips_r4k.c | 2 +- hw/moxie/moxiesim.c | 4 ++-- hw/net/milkymist-minimac2.c | 2 +- hw/openrisc/openrisc_sim.c | 2 +- hw/pci-host/prep.c | 2 +- hw/pci/pci.c | 2 +- hw/ppc/mac_newworld.c | 2 +- hw/ppc/mac_oldworld.c | 2 +- hw/ppc/ppc405_boards.c | 7 ++++--- hw/ppc/ppc405_uc.c | 2 +- hw/s390x/s390-virtio-ccw.c | 2 +- hw/s390x/sclp.c | 3 ++- hw/sh4/r2d.c | 2 +- hw/sh4/shix.c | 6 +++--- hw/sparc/leon3.c | 2 +- hw/sparc/sun4m.c | 6 +++--- hw/sparc64/sun4u.c | 4 ++-- hw/tricore/tricore_testboard.c | 18 +++++++++++------ hw/unicore32/puv3.c | 2 +- hw/xtensa/sim.c | 4 ++-- hw/xtensa/xtfpga.c | 7 ++++--- include/qapi/error.h | 11 +++++++++++ memory.c | 2 +- numa.c | 4 ++-- util/error.c | 34 ++++++++++++++++++++------------ xen-hvm.c | 2 +- 66 files changed, 144 insertions(+), 116 deletions(-) -- 2.4.3