Store the pointer to the bootloader-provided env data in a static var

for use in debug printing.
This commit is contained in:
Ian Lepore 2016-01-03 14:42:28 +00:00
parent 93ef13b5e0
commit 7aa9d7375e

View File

@ -194,6 +194,8 @@ int _min_bzero_size = 0;
extern int *end;
#ifdef FDT
static char *loader_envp;
vm_paddr_t pmap_pa;
#ifdef ARM_NEW_PMAP
@ -1110,7 +1112,8 @@ freebsd_parse_boot_param(struct arm_boot_params *abp)
return 0;
boothowto = MD_FETCH(kmdp, MODINFOMD_HOWTO, int);
init_static_kenv(MD_FETCH(kmdp, MODINFOMD_ENVP, char *), 0);
loader_envp = MD_FETCH(kmdp, MODINFOMD_ENVP, char *);
init_static_kenv(loader_envp, 0);
lastaddr = MD_FETCH(kmdp, MODINFOMD_KERNEND, vm_offset_t);
#ifdef DDB
ksym_start = MD_FETCH(kmdp, MODINFOMD_SSYM, uintptr_t);
@ -1433,13 +1436,13 @@ print_kenv(void)
char *cp;
debugf("loader passed (static) kenv:\n");
if (kern_envp == NULL) {
if (loader_envp == NULL) {
debugf(" no env, null ptr\n");
return;
}
debugf(" kern_envp = 0x%08x\n", (uint32_t)kern_envp);
debugf(" loader_envp = 0x%08x\n", (uint32_t)loader_envp);
for (cp = kern_envp; cp != NULL; cp = kenv_next(cp))
for (cp = loader_envp; cp != NULL; cp = kenv_next(cp))
debugf(" %x %s\n", (uint32_t)cp, cp);
}