diff options
author | tmm <tmm@FreeBSD.org> | 2002-10-18 23:49:18 +0000 |
---|---|---|
committer | tmm <tmm@FreeBSD.org> | 2002-10-18 23:49:18 +0000 |
commit | bef256b79fe753d3b9494201eccfe538df2717ea (patch) | |
tree | cb8b72476a1befadd08ddf2b7fb64dce5117109f /sys | |
parent | 60e242d9859bd6a629cfafdaf69d6f4284b4138f (diff) | |
download | FreeBSD-src-bef256b79fe753d3b9494201eccfe538df2717ea.zip FreeBSD-src-bef256b79fe753d3b9494201eccfe538df2717ea.tar.gz |
Pass the right number of tlb slots to the kernel. The allocation scheme
was changed in r1.4, but I neglected to update most of the code in
metadata.c.
Pointy hat to: tmm
Diffstat (limited to 'sys')
-rw-r--r-- | sys/boot/sparc64/loader/metadata.c | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/sys/boot/sparc64/loader/metadata.c b/sys/boot/sparc64/loader/metadata.c index 68fdaf9..7f0b873 100644 --- a/sys/boot/sparc64/loader/metadata.c +++ b/sys/boot/sparc64/loader/metadata.c @@ -42,8 +42,6 @@ extern struct tlb_entry *itlb_store; extern int dtlb_slot; extern int itlb_slot; -extern int dtlb_slot_max; -extern int itlb_slot_max; /* * Return a 'boothowto' value corresponding to the kernel arguments in @@ -270,8 +268,6 @@ md_load(char *args, vm_offset_t *modulep) vm_offset_t size; char *rootdevname; int howto; - int dtlb_slots; - int itlb_slots; howto = md_getboothowto(args); @@ -309,20 +305,18 @@ md_load(char *args, vm_offset_t *modulep) addr = roundup(addr, PAGE_SIZE); kernend = 0; - dtlb_slots = dtlb_slot_max - dtlb_slot; - itlb_slots = itlb_slot_max - itlb_slot; kfp = file_findfile(NULL, "elf kernel"); if (kfp == NULL) panic("can't find kernel file"); file_addmetadata(kfp, MODINFOMD_HOWTO, sizeof howto, &howto); file_addmetadata(kfp, MODINFOMD_ENVP, sizeof envp, &envp); file_addmetadata(kfp, MODINFOMD_KERNEND, sizeof kernend, &kernend); - file_addmetadata(kfp, MODINFOMD_DTLB_SLOTS, sizeof dtlb_slots, &dtlb_slots); - file_addmetadata(kfp, MODINFOMD_ITLB_SLOTS, sizeof itlb_slots, &itlb_slots); + file_addmetadata(kfp, MODINFOMD_DTLB_SLOTS, sizeof dtlb_slot, &dtlb_slot); + file_addmetadata(kfp, MODINFOMD_ITLB_SLOTS, sizeof itlb_slot, &itlb_slot); file_addmetadata(kfp, MODINFOMD_DTLB, - dtlb_slots * sizeof(*dtlb_store), dtlb_store); + dtlb_slot * sizeof(*dtlb_store), dtlb_store); file_addmetadata(kfp, MODINFOMD_ITLB, - itlb_slots * sizeof(*itlb_store), itlb_store); + itlb_slot * sizeof(*itlb_store), itlb_store); *modulep = addr; size = md_copymodules(0); |