summaryrefslogtreecommitdiffstats
path: root/sys/ufs
diff options
context:
space:
mode:
authorglebius <glebius@FreeBSD.org>2014-11-23 12:01:52 +0000
committerglebius <glebius@FreeBSD.org>2014-11-23 12:01:52 +0000
commitb4ef8e602d9f4d2aaffedc22322c8db21a20c289 (patch)
treef1f00e6a4e1bf77d75d8ea1deacb1498df360944 /sys/ufs
parent10696c171b9b4f5224bf7aa76a0c80e7c072a26b (diff)
downloadFreeBSD-src-b4ef8e602d9f4d2aaffedc22322c8db21a20c289.zip
FreeBSD-src-b4ef8e602d9f4d2aaffedc22322c8db21a20c289.tar.gz
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.
Diffstat (limited to 'sys/ufs')
-rw-r--r--sys/ufs/ffs/ffs_vnops.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/ufs/ffs/ffs_vnops.c b/sys/ufs/ffs/ffs_vnops.c
index 84d25d1..6b34a40 100644
--- a/sys/ufs/ffs/ffs_vnops.c
+++ b/sys/ufs/ffs/ffs_vnops.c
@@ -124,6 +124,7 @@ struct vop_vector ffs_vnodeops1 = {
.vop_default = &ufs_vnodeops,
.vop_fsync = ffs_fsync,
.vop_getpages = vnode_pager_local_getpages,
+ .vop_getpages_async = vnode_pager_local_getpages_async,
.vop_lock1 = ffs_lock,
.vop_read = ffs_read,
.vop_reallocblks = ffs_reallocblks,
@@ -143,6 +144,7 @@ struct vop_vector ffs_vnodeops2 = {
.vop_default = &ufs_vnodeops,
.vop_fsync = ffs_fsync,
.vop_getpages = vnode_pager_local_getpages,
+ .vop_getpages_async = vnode_pager_local_getpages_async,
.vop_lock1 = ffs_lock,
.vop_read = ffs_read,
.vop_reallocblks = ffs_reallocblks,
OpenPOWER on IntegriCloud