diff options
author | alc <alc@FreeBSD.org> | 2014-10-23 21:02:40 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2014-10-23 21:02:40 +0000 |
commit | a16733e12da040a0b30d66475d15894ad805d18f (patch) | |
tree | ea689d96b402f2fa8de11642265503cf143ac70d | |
parent | 93ccee215cd3e965f2ce15f5a20fd10b99f40653 (diff) | |
download | FreeBSD-src-a16733e12da040a0b30d66475d15894ad805d18f.zip FreeBSD-src-a16733e12da040a0b30d66475d15894ad805d18f.tar.gz |
Under PAE ULONG is insufficient for representing the physical memory size. Use QUAD
for "hw.physmem" so that a physical memory size greater than 4 GB can be specified
from the boot loader.
-rw-r--r-- | sys/i386/i386/machdep.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/i386/i386/machdep.c b/sys/i386/i386/machdep.c index 5ed5c54..efe999a 100644 --- a/sys/i386/i386/machdep.c +++ b/sys/i386/i386/machdep.c @@ -2463,10 +2463,10 @@ static void getmemsize(int first) { int has_smap, off, physmap_idx, pa_indx, da_indx; - u_long physmem_tunable, memtest; + u_long memtest; vm_paddr_t physmap[PHYSMAP_SIZE]; pt_entry_t *pte; - quad_t dcons_addr, dcons_size; + quad_t dcons_addr, dcons_size, physmem_tunable; #ifndef XEN int hasbrokenint12, i, res; u_int extmem; @@ -2650,7 +2650,7 @@ physmap_done: Maxmem = MAXMEM / 4; #endif - if (TUNABLE_ULONG_FETCH("hw.physmem", &physmem_tunable)) + if (TUNABLE_QUAD_FETCH("hw.physmem", &physmem_tunable)) Maxmem = atop(physmem_tunable); /* |