diff options
author | jake <jake@FreeBSD.org> | 2003-03-25 00:07:06 +0000 |
---|---|---|
committer | jake <jake@FreeBSD.org> | 2003-03-25 00:07:06 +0000 |
commit | 783ae539c3e44d35afb500b405ff986b3033bc4a (patch) | |
tree | 553401a4d58eb98b1e208a82c3ba2c32b848a225 /sys/vm/vm_contig.c | |
parent | 0079e3d786d0b0a2647229d3498a426a039a5016 (diff) | |
download | FreeBSD-src-783ae539c3e44d35afb500b405ff986b3033bc4a.zip FreeBSD-src-783ae539c3e44d35afb500b405ff986b3033bc4a.tar.gz |
- Add vm_paddr_t, a physical address type. This is required for systems
where physical addresses larger than virtual addresses, such as i386s
with PAE.
- Use this to represent physical addresses in the MI vm system and in the
i386 pmap code. This also changes the paddr parameter to d_mmap_t.
- Fix printf formats to handle physical addresses >4G in the i386 memory
detection code, and due to kvtop returning vm_paddr_t instead of u_long.
Note that this is a name change only; vm_paddr_t is still the same as
vm_offset_t on all currently supported platforms.
Sponsored by: DARPA, Network Associates Laboratories
Discussed with: re, phk (cdevsw change)
Diffstat (limited to 'sys/vm/vm_contig.c')
-rw-r--r-- | sys/vm/vm_contig.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/sys/vm/vm_contig.c b/sys/vm/vm_contig.c index 58666d9..51f2cd8 100644 --- a/sys/vm/vm_contig.c +++ b/sys/vm/vm_contig.c @@ -132,14 +132,15 @@ contigmalloc1( unsigned long size, /* should be size_t here and for malloc() */ struct malloc_type *type, int flags, - unsigned long low, - unsigned long high, + vm_paddr_t low, + vm_paddr_t high, unsigned long alignment, unsigned long boundary, vm_map_t map) { int i, s, start; - vm_offset_t addr, phys, tmp_addr; + vm_paddr_t phys; + vm_offset_t addr, tmp_addr; int pass; vm_page_t pga = vm_page_array; @@ -264,8 +265,8 @@ contigmalloc( unsigned long size, /* should be size_t here and for malloc() */ struct malloc_type *type, int flags, - unsigned long low, - unsigned long high, + vm_paddr_t low, + vm_paddr_t high, unsigned long alignment, unsigned long boundary) { @@ -288,8 +289,8 @@ contigfree(void *addr, unsigned long size, struct malloc_type *type) vm_offset_t vm_page_alloc_contig( vm_offset_t size, - vm_offset_t low, - vm_offset_t high, + vm_paddr_t low, + vm_paddr_t high, vm_offset_t alignment) { vm_offset_t ret; |