aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorMark Johnston <markj@FreeBSD.org>2018-12-11 16:49:01 +0000
committerMark Johnston <markj@FreeBSD.org>2018-12-11 16:49:01 +0000
commitb6da2600f96a9332dd46d0a991d8387ba0bf41bd (patch)
treed64aec900a5a08b1ab4bcc8491ef1af4f15ef103 /sys
parent081954d3a2ceca9bc0a986ee8d1941f943948e89 (diff)
downloadsrc-b6da2600f96a9332dd46d0a991d8387ba0bf41bd.tar.gz
src-b6da2600f96a9332dd46d0a991d8387ba0bf41bd.zip
Fix the PAE kernel gcc build.
The error was caused by map_ucode() casting a vm_paddr_t to a void *. Use a uintptr_t instead to match the caller. Fix some style bugs while here. Reported by: bde Reviewed by: bde MFC after: 1 week Sponsored by: The FreeBSD Foundation
Notes
Notes: svn path=/head/; revision=341821
Diffstat (limited to 'sys')
-rw-r--r--sys/x86/x86/ucode.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/sys/x86/x86/ucode.c b/sys/x86/x86/ucode.c
index c0810ae7eb21..93f82e37eb66 100644
--- a/sys/x86/x86/ucode.c
+++ b/sys/x86/x86/ucode.c
@@ -278,12 +278,13 @@ ucode_load_ap(int cpu)
}
static void *
-map_ucode(vm_paddr_t free, size_t len)
+map_ucode(uintptr_t free, size_t len)
{
-
#ifdef __i386__
- for (vm_paddr_t pa = free; pa < free + len; pa += PAGE_SIZE)
- pmap_kenter(pa, pa);
+ uintptr_t va;
+
+ for (va = free; va < free + len; va += PAGE_SIZE)
+ pmap_kenter(va, (vm_paddr_t)va);
#else
(void)len;
#endif
@@ -291,12 +292,13 @@ map_ucode(vm_paddr_t free, size_t len)
}
static void
-unmap_ucode(vm_paddr_t free, size_t len)
+unmap_ucode(uintptr_t free, size_t len)
{
-
#ifdef __i386__
- for (vm_paddr_t pa = free; pa < free + len; pa += PAGE_SIZE)
- pmap_kremove((vm_offset_t)pa);
+ uintptr_t va;
+
+ for (va = free; va < free + len; va += PAGE_SIZE)
+ pmap_kremove(va);
#else
(void)free;
(void)len;