Changeset View
Changeset View
Standalone View
Standalone View
head/sys/vm/vnode_pager.c
Show First 20 Lines • Show All 538 Lines • ▼ Show 20 Lines | vnode_pager_addr(struct vnode *vp, vm_ooffset_t address, daddr_t *rtaddress, | ||||
voffset = address % bsize; | voffset = address % bsize; | ||||
err = VOP_BMAP(vp, vblock, NULL, rtaddress, run, NULL); | err = VOP_BMAP(vp, vblock, NULL, rtaddress, run, NULL); | ||||
if (err == 0) { | if (err == 0) { | ||||
if (*rtaddress != -1) | if (*rtaddress != -1) | ||||
*rtaddress += voffset / DEV_BSIZE; | *rtaddress += voffset / DEV_BSIZE; | ||||
if (run) { | if (run) { | ||||
*run += 1; | *run += 1; | ||||
*run *= bsize/PAGE_SIZE; | *run *= bsize / PAGE_SIZE; | ||||
*run -= voffset/PAGE_SIZE; | *run -= voffset / PAGE_SIZE; | ||||
} | } | ||||
} | } | ||||
return (err); | return (err); | ||||
} | } | ||||
/* | /* | ||||
* small block filesystem vnode pager input | * small block filesystem vnode pager input | ||||
▲ Show 20 Lines • Show All 1,033 Lines • Show Last 20 Lines |