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/device_pager.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/device_pager.c')
-rw-r--r-- | sys/vm/device_pager.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/vm/device_pager.c b/sys/vm/device_pager.c index 85f29ae..e4d80c4 100644 --- a/sys/vm/device_pager.c +++ b/sys/vm/device_pager.c @@ -74,7 +74,7 @@ static struct mtx dev_pager_mtx; static uma_zone_t fakepg_zone; -static vm_page_t dev_pager_getfake(vm_offset_t); +static vm_page_t dev_pager_getfake(vm_paddr_t); static void dev_pager_putfake(vm_page_t); struct pagerops devicepagerops = { @@ -107,7 +107,8 @@ dev_pager_alloc(void *handle, vm_ooffset_t size, vm_prot_t prot, vm_ooffset_t fo d_mmap_t *mapfunc; vm_object_t object; unsigned int npages; - vm_offset_t off, paddr; + vm_paddr_t paddr; + vm_offset_t off; /* * Offset should be page aligned. @@ -202,7 +203,7 @@ dev_pager_getpages(object, m, count, reqpage) int reqpage; { vm_pindex_t offset; - vm_offset_t paddr; + vm_paddr_t paddr; vm_page_t page; dev_t dev; int i, ret; @@ -262,7 +263,7 @@ dev_pager_haspage(object, pindex, before, after) static vm_page_t dev_pager_getfake(paddr) - vm_offset_t paddr; + vm_paddr_t paddr; { vm_page_t m; |