From: Zhou Jie Date: Thu, 12 May 2016 12:22:25 +0000 (+0100) Subject: hw/arm/nseries: Allocating Large sized arrays to heap X-Git-Tag: v2.7.0-rc0~190^2~31 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0b062eb090517a66f3e9b4b1ddf2e740e9517102;p=thirdparty%2Fqemu.git hw/arm/nseries: Allocating Large sized arrays to heap n8x0_init has a huge stack usage of 65536 bytes approx. Moving large arrays to heap to reduce stack usage. Signed-off-by: Zhou Jie Message-id: 1461651308-894-1-git-send-email-zhoujie2011@cn.fujitsu.com Reviewed-by: Peter Maydell Signed-off-by: Peter Maydell --- diff --git a/hw/arm/nseries.c b/hw/arm/nseries.c index 53825055596..c7068c0d380 100644 --- a/hw/arm/nseries.c +++ b/hw/arm/nseries.c @@ -1364,7 +1364,7 @@ static void n8x0_init(MachineState *machine, if (option_rom[0].name && (machine->boot_order[0] == 'n' || !machine->kernel_filename)) { - uint8_t nolo_tags[0x10000]; + uint8_t *nolo_tags = g_new(uint8_t, 0x10000); /* No, wait, better start at the ROM. */ s->mpu->cpu->env.regs[15] = OMAP2_Q2_BASE + 0x400000; @@ -1383,6 +1383,7 @@ static void n8x0_init(MachineState *machine, n800_setup_nolo_tags(nolo_tags); cpu_physical_memory_write(OMAP2_SRAM_BASE, nolo_tags, 0x10000); + g_free(nolo_tags); } }