aboutsummaryrefslogtreecommitdiff
path: root/sys/vm/vnode_pager.h
diff options
context:
space:
mode:
authorGleb Smirnoff <glebius@FreeBSD.org>2014-11-23 12:01:52 +0000
committerGleb Smirnoff <glebius@FreeBSD.org>2014-11-23 12:01:52 +0000
commit90effb23412fae2a397a34f4983e15dfc522e34b (patch)
treef1f00e6a4e1bf77d75d8ea1deacb1498df360944 /sys/vm/vnode_pager.h
parent03fcebe6a2db9285dc920e704e8110204771d985 (diff)
downloadsrc-90effb23412fae2a397a34f4983e15dfc522e34b.tar.gz
src-90effb23412fae2a397a34f4983e15dfc522e34b.zip
Merge from projects/sendfile:
o Provide a new VOP_GETPAGES_ASYNC(), which works like VOP_GETPAGES(), but doesn't sleep. It returns immediately, and will execute the I/O done handler function that must be supplied as argument. o Provide VOP_GETPAGES_ASYNC() for the FFS, which uses vnode_pager. o Extend pagertab to support pgo_getpages_async method, and implement this method for vnode_pager. Reviewed by: kib Tested by: pho Sponsored by: Netflix Sponsored by: Nginx, Inc.
Notes
Notes: svn path=/head/; revision=274914
Diffstat (limited to 'sys/vm/vnode_pager.h')
-rw-r--r--sys/vm/vnode_pager.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/vm/vnode_pager.h b/sys/vm/vnode_pager.h
index b6b85f45e308..1ff16ebfa937 100644
--- a/sys/vm/vnode_pager.h
+++ b/sys/vm/vnode_pager.h
@@ -41,11 +41,12 @@
#ifdef _KERNEL
int vnode_pager_generic_getpages(struct vnode *vp, vm_page_t *m,
- int count, int reqpage);
+ int count, int reqpage, vop_getpages_iodone_t iodone, void *arg);
int vnode_pager_generic_putpages(struct vnode *vp, vm_page_t *m,
int count, boolean_t sync,
int *rtvals);
int vnode_pager_local_getpages(struct vop_getpages_args *ap);
+int vnode_pager_local_getpages_async(struct vop_getpages_async_args *ap);
void vnode_pager_release_writecount(vm_object_t object, vm_offset_t start,
vm_offset_t end);