summaryrefslogtreecommitdiffstats
path: root/sys/vm
diff options
context:
space:
mode:
authorrnoland <rnoland@FreeBSD.org>2009-12-29 21:51:28 +0000
committerrnoland <rnoland@FreeBSD.org>2009-12-29 21:51:28 +0000
commit3dc3ad8568aae78c6c3ebad44e859a0feac05c38 (patch)
treeffed01a3f1f97aa245caf60848edab318a53aef9 /sys/vm
parentb8a003ef1beea7446e2328791d40c81ee37e8bb0 (diff)
downloadFreeBSD-src-3dc3ad8568aae78c6c3ebad44e859a0feac05c38.zip
FreeBSD-src-3dc3ad8568aae78c6c3ebad44e859a0feac05c38.tar.gz
Update d_mmap() to accept vm_ooffset_t and vm_memattr_t.
This replaces d_mmap() with the d_mmap2() implementation and also changes the type of offset to vm_ooffset_t. Purge d_mmap2(). All driver modules will need to be rebuilt since D_VERSION is also bumped. Reviewed by: jhb@ MFC after: Not in this lifetime...
Diffstat (limited to 'sys/vm')
-rw-r--r--sys/vm/device_pager.c17
1 files changed, 3 insertions, 14 deletions
diff --git a/sys/vm/device_pager.c b/sys/vm/device_pager.c
index c7f5593..9002e77 100644
--- a/sys/vm/device_pager.c
+++ b/sys/vm/device_pager.c
@@ -93,17 +93,6 @@ dev_pager_init()
UMA_ZONE_NOFREE|UMA_ZONE_VM);
}
-static __inline int
-dev_mmap(struct cdevsw *csw, struct cdev *dev, vm_offset_t offset,
- vm_paddr_t *paddr, int nprot, vm_memattr_t *memattr)
-{
-
- if (csw->d_flags & D_MMAP2)
- return (csw->d_mmap2(dev, offset, paddr, nprot, memattr));
- else
- return (csw->d_mmap(dev, offset, paddr, nprot));
-}
-
/*
* MPSAFE
*/
@@ -116,7 +105,7 @@ dev_pager_alloc(void *handle, vm_ooffset_t size, vm_prot_t prot,
vm_pindex_t pindex;
unsigned int npages;
vm_paddr_t paddr;
- vm_offset_t off;
+ vm_ooffset_t off;
vm_memattr_t dummy;
struct cdevsw *csw;
@@ -145,7 +134,7 @@ dev_pager_alloc(void *handle, vm_ooffset_t size, vm_prot_t prot,
*/
npages = OFF_TO_IDX(size);
for (off = foff; npages--; off += PAGE_SIZE)
- if (dev_mmap(csw, dev, off, &paddr, (int)prot, &dummy) != 0) {
+ if (csw->d_mmap(dev, off, &paddr, (int)prot, &dummy) != 0) {
dev_relthread(dev);
return (NULL);
}
@@ -242,7 +231,7 @@ dev_pager_getpages(object, m, count, reqpage)
td = curthread;
fpop = td->td_fpop;
td->td_fpop = NULL;
- ret = dev_mmap(csw, dev, (vm_offset_t)offset << PAGE_SHIFT, &paddr,
+ ret = csw->d_mmap(dev, (vm_ooffset_t)offset << PAGE_SHIFT, &paddr,
PROT_READ, &memattr);
KASSERT(ret == 0, ("dev_pager_getpage: map function returns error"));
td->td_fpop = fpop;
OpenPOWER on IntegriCloud