aboutsummaryrefslogtreecommitdiff
path: root/sys/mips/idt
diff options
context:
space:
mode:
authorOleksandr Tymoshenko <gonzo@FreeBSD.org>2010-01-25 00:44:05 +0000
committerOleksandr Tymoshenko <gonzo@FreeBSD.org>2010-01-25 00:44:05 +0000
commitd86043b5949706b83461f73a030f318317377e40 (patch)
tree3f8bc1e7f0c14859d089fd83f187631956bd080c /sys/mips/idt
parent55926a661660e98b00d1861125e0a07171f7ada3 (diff)
downloadsrc-d86043b5949706b83461f73a030f318317377e40.tar.gz
src-d86043b5949706b83461f73a030f318317377e40.zip
- Call post-boot fixup function in order to get proper static
symbols resolving in DDB - When zeroing .bss/.sbss do not round end address to page boundary, it's not neccessary and might destroy data pased by trampoline or boot loader
Notes
Notes: svn path=/head/; revision=202954
Diffstat (limited to 'sys/mips/idt')
-rw-r--r--sys/mips/idt/idt_machdep.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/mips/idt/idt_machdep.c b/sys/mips/idt/idt_machdep.c
index c41e4c3cc024..0dfee6633341 100644
--- a/sys/mips/idt/idt_machdep.c
+++ b/sys/mips/idt/idt_machdep.c
@@ -134,9 +134,11 @@ platform_start(__register_t a0, __register_t a1,
/* clear the BSS and SBSS segments */
- kernend = round_page((vm_offset_t)&end);
+ kernend = (vm_offset_t)&end;
memset(&edata, 0, kernend - (vm_offset_t)(&edata));
+ mips_postboot_fixup();
+
/* Initialize pcpu stuff */
mips_pcpu0_init();
@@ -162,7 +164,7 @@ platform_start(__register_t a0, __register_t a1,
}
/* phys_avail regions are in bytes */
- phys_avail[0] = MIPS_KSEG0_TO_PHYS((vm_offset_t)&end);
+ phys_avail[0] = MIPS_KSEG0_TO_PHYS(kernel_kseg0_end);
phys_avail[1] = ctob(realmem);
physmem = realmem;