ubldr: Bump heap size from 512K to 1M

lualoader in itself only uses another ~200K, but there seems to be no reason
not to bump it a little higher to give us some more wiggle room.

With this, I can boot using a menu-enabled lualoader, no problem and
reasonably fast. Some heap usage datapoints from the review:

forthloader, no menus, kernel loaded:
heap base at 0x1203d5b0, top at 0x1208e000, used 330320

lualoader, no menus, kernel loaded:
heap base at 0x42050028, top at 0x420ab000, used 372696

lualoader, menus, kernel loaded:
heap base at 0x42050028, top at 0x420d5000, used 544728

Since then, the no menu case for lualoader should have decreased slightly as
I've made some changes to make sure that it no longer loads any of th emenu
bits with beastie disabled.

While here, split heap size out into a HEAP_SIZE macro.

Reviewed by:	ian, imp
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D14471
This commit is contained in:
Kyle Evans 2018-03-14 02:35:49 +00:00
parent ae9b401786
commit 0cb59ea75a

View File

@ -41,6 +41,10 @@ __FBSDID("$FreeBSD$");
#define nitems(x) (sizeof((x)) / sizeof((x)[0]))
#endif
#ifndef HEAP_SIZE
#define HEAP_SIZE (1 * 1024 * 1024)
#endif
struct uboot_devdesc currdev;
struct arch_switch archsw; /* MI/MD interface boundary */
int devs_no;
@ -421,7 +425,7 @@ main(int argc, char **argv)
* of our bss and the bottom of the u-boot stack to avoid overlap.
*/
uboot_heap_start = round_page((uintptr_t)end);
uboot_heap_end = uboot_heap_start + 512 * 1024;
uboot_heap_end = uboot_heap_start + HEAP_SIZE;
setheap((void *)uboot_heap_start, (void *)uboot_heap_end);
/*