freebsd-src/stand
Warner Losh db8d0c0cd9 kboot: Allocate a really big first segment
Allocate a huge segment for the first kexec_load segments. We limit the
lessor of:
	allocation to the size of the remaining memory segment
	45% of available memory
	95% of the memory we can allocate

This allows us to have really large RAM disks. We likely need to limit
this to the amount we actually used, though, since this can be a lot of
memory.

We have to do this complicated calculation for a few reasons: First, we
need 2 copies of the loaded kernel in the memory: The kernel can copy
everything to a temporary buffer. Next, malloc (via mmap) is limited to
a certain amount due to over commit, so we have to not allocate all we
can (only most of what we can).

Sponsored by:		Netflix
Reviewed by:		tsoome
Differential Revision:	https://reviews.freebsd.org/D38314
2023-02-03 08:41:41 -07:00
..
arm64 stand: Remove extra efi.h include 2022-07-15 12:00:49 -06:00
common kboot: Don't need an arch pointer to get segments 2023-02-03 08:41:40 -07:00
defaults
efi stand: share bootinfo.c between EFI and KBOOT 2023-02-03 08:41:40 -07:00
fdt Remove "All Rights Reserved" from Foundation copyrights 2022-06-30 10:49:09 -04:00
ficl Revert "stand: Grammar fix for a source code comment" 2022-09-05 15:40:55 +02:00
ficl32
fonts
forth loader.4th(8): Fix a typo in the manual page 2022-04-02 15:11:59 +02:00
i386 stand: create common set_currdev 2023-01-11 15:15:15 -07:00
images
kboot kboot: Allocate a really big first segment 2023-02-03 08:41:41 -07:00
kshim stand/usb: Fix build by declaring missing functions and types. 2022-03-17 15:26:24 +01:00
liblua lua: reduce diffs between luaconf.h copies 2023-01-26 12:38:19 -05:00
liblua32
libofw stand/ofw: dev can't be NULL here 2023-01-13 14:22:38 -07:00
libsa stand: dev can't be NULL in default_prasedev 2023-01-13 15:54:44 -07:00
libsa32
lua lualoader: Add loader_menu_multi_user_prompt config variable 2022-09-02 20:30:40 +01:00
man loader.efi(8): document slop control, amd64 nocopy, and amd64 fault commands 2022-09-06 18:55:45 +03:00
powerpc stand: Create common gen_setcurrdev and replace code 2023-01-11 15:15:14 -07:00
uboot stand/uboot: Remove -fPIC here 2023-01-25 08:04:59 -07:00
usb stand: For all disk drivers, connect dv_parsedev to disk_parsedev 2022-11-30 15:30:32 -07:00
userboot stand: create common set_currdev 2023-01-11 15:15:15 -07:00
defs.mk
fdt.mk
ficl.mk
loader.mk stand: Move md_copymodules into modinfo.c and reduce copies 2022-09-16 09:18:56 -06:00
lua.mk
Makefile stand: Add a helper 'universe' target 2022-07-30 05:01:47 -06:00
Makefile.amd64
Makefile.inc
veriexec.mk