diff options
author | cognet <cognet@FreeBSD.org> | 2011-10-16 17:37:54 +0000 |
---|---|---|
committer | cognet <cognet@FreeBSD.org> | 2011-10-16 17:37:54 +0000 |
commit | c3b6325d6f44ae4a6bcd494fc00d74d39204c8a0 (patch) | |
tree | a08083a8d01b04e81823dff954e885c15cbcd9f3 /sys/arm | |
parent | c18d1febae15f77c86db50a170ce609073f948b0 (diff) | |
download | FreeBSD-src-c3b6325d6f44ae4a6bcd494fc00d74d39204c8a0.zip FreeBSD-src-c3b6325d6f44ae4a6bcd494fc00d74d39204c8a0.tar.gz |
Explicitely set ARM_RAS_START and ARM_RAS_END once the cacheline or the
page has been allocated, or we could end up using random values, and bad things
could happen.
PR: arm/161492
Submitted by: Ian Lepore <freebsd AT damnhippie dot dyndns DOT org>
MFC after: 1 week
Diffstat (limited to 'sys/arm')
-rw-r--r-- | sys/arm/arm/machdep.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/arm/arm/machdep.c b/sys/arm/arm/machdep.c index 0bfc98e..a7a792d 100644 --- a/sys/arm/arm/machdep.c +++ b/sys/arm/arm/machdep.c @@ -312,6 +312,8 @@ cpu_startup(void *dummy) m = vm_page_alloc(NULL, 0, VM_ALLOC_NOOBJ | VM_ALLOC_ZERO); pmap_kenter_user(ARM_TP_ADDRESS, VM_PAGE_TO_PHYS(m)); #endif + *(uint32_t *)ARM_RAS_START = 0; + *(uint32_t *)ARM_RAS_END = 0xffffffff; } SYSINIT(cpu, SI_SUB_CPU, SI_ORDER_FIRST, cpu_startup, NULL); |