summaryrefslogtreecommitdiffstats
path: root/sys/vm/device_pager.c
diff options
context:
space:
mode:
authorjake <jake@FreeBSD.org>2003-03-25 00:07:06 +0000
committerjake <jake@FreeBSD.org>2003-03-25 00:07:06 +0000
commit783ae539c3e44d35afb500b405ff986b3033bc4a (patch)
tree553401a4d58eb98b1e208a82c3ba2c32b848a225 /sys/vm/device_pager.c
parent0079e3d786d0b0a2647229d3498a426a039a5016 (diff)
downloadFreeBSD-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.c9
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;
OpenPOWER on IntegriCloud