diff options
author | Nathan Scott <nathans@sgi.com> | 2006-03-30 22:08:59 -0500 |
---|---|---|
committer | Nathan Scott <nathans@sgi.com> | 2006-03-30 22:08:59 -0500 |
commit | 1b895840ce93fd2d150a86c800a3085eaab4eb9e (patch) | |
tree | 2f1c664ca2f948ec8c47f2c66e03cb21f2b9a45c /fs/xfs/linux-2.6/xfs_vnode.h | |
parent | 3bbcc8e3976f8bba2fd607c8850d7dfe7e332fda (diff) |
[XFS] Provide XFS support for the splice syscall.
Signed-off-by: Nathan Scott <nathans@sgi.com>
Diffstat (limited to 'fs/xfs/linux-2.6/xfs_vnode.h')
-rw-r--r-- | fs/xfs/linux-2.6/xfs_vnode.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/fs/xfs/linux-2.6/xfs_vnode.h b/fs/xfs/linux-2.6/xfs_vnode.h index 06f5845e9568..6f1c79a28f8b 100644 --- a/fs/xfs/linux-2.6/xfs_vnode.h +++ b/fs/xfs/linux-2.6/xfs_vnode.h | |||
@@ -173,6 +173,12 @@ typedef ssize_t (*vop_write_t)(bhv_desc_t *, struct kiocb *, | |||
173 | typedef ssize_t (*vop_sendfile_t)(bhv_desc_t *, struct file *, | 173 | typedef ssize_t (*vop_sendfile_t)(bhv_desc_t *, struct file *, |
174 | loff_t *, int, size_t, read_actor_t, | 174 | loff_t *, int, size_t, read_actor_t, |
175 | void *, struct cred *); | 175 | void *, struct cred *); |
176 | typedef ssize_t (*vop_splice_read_t)(bhv_desc_t *, struct file *, | ||
177 | struct inode *, size_t, int, int, | ||
178 | struct cred *); | ||
179 | typedef ssize_t (*vop_splice_write_t)(bhv_desc_t *, struct inode *, | ||
180 | struct file *, size_t, int, int, | ||
181 | struct cred *); | ||
176 | typedef int (*vop_ioctl_t)(bhv_desc_t *, struct inode *, struct file *, | 182 | typedef int (*vop_ioctl_t)(bhv_desc_t *, struct inode *, struct file *, |
177 | int, unsigned int, void __user *); | 183 | int, unsigned int, void __user *); |
178 | typedef int (*vop_getattr_t)(bhv_desc_t *, struct vattr *, int, | 184 | typedef int (*vop_getattr_t)(bhv_desc_t *, struct vattr *, int, |
@@ -231,6 +237,8 @@ typedef struct vnodeops { | |||
231 | vop_read_t vop_read; | 237 | vop_read_t vop_read; |
232 | vop_write_t vop_write; | 238 | vop_write_t vop_write; |
233 | vop_sendfile_t vop_sendfile; | 239 | vop_sendfile_t vop_sendfile; |
240 | vop_splice_read_t vop_splice_read; | ||
241 | vop_splice_write_t vop_splice_write; | ||
234 | vop_ioctl_t vop_ioctl; | 242 | vop_ioctl_t vop_ioctl; |
235 | vop_getattr_t vop_getattr; | 243 | vop_getattr_t vop_getattr; |
236 | vop_setattr_t vop_setattr; | 244 | vop_setattr_t vop_setattr; |
@@ -276,6 +284,10 @@ typedef struct vnodeops { | |||
276 | rv = _VOP_(vop_write, vp)((vp)->v_fbhv,file,iov,segs,offset,ioflags,cr) | 284 | rv = _VOP_(vop_write, vp)((vp)->v_fbhv,file,iov,segs,offset,ioflags,cr) |
277 | #define VOP_SENDFILE(vp,f,off,ioflags,cnt,act,targ,cr,rv) \ | 285 | #define VOP_SENDFILE(vp,f,off,ioflags,cnt,act,targ,cr,rv) \ |
278 | rv = _VOP_(vop_sendfile, vp)((vp)->v_fbhv,f,off,ioflags,cnt,act,targ,cr) | 286 | rv = _VOP_(vop_sendfile, vp)((vp)->v_fbhv,f,off,ioflags,cnt,act,targ,cr) |
287 | #define VOP_SPLICE_READ(vp,f,pipe,cnt,fl,iofl,cr,rv) \ | ||
288 | rv = _VOP_(vop_splice_read, vp)((vp)->v_fbhv,f,pipe,cnt,fl,iofl,cr) | ||
289 | #define VOP_SPLICE_WRITE(vp,f,pipe,cnt,fl,iofl,cr,rv) \ | ||
290 | rv = _VOP_(vop_splice_write, vp)((vp)->v_fbhv,f,pipe,cnt,fl,iofl,cr) | ||
279 | #define VOP_BMAP(vp,of,sz,rw,b,n,rv) \ | 291 | #define VOP_BMAP(vp,of,sz,rw,b,n,rv) \ |
280 | rv = _VOP_(vop_bmap, vp)((vp)->v_fbhv,of,sz,rw,b,n) | 292 | rv = _VOP_(vop_bmap, vp)((vp)->v_fbhv,of,sz,rw,b,n) |
281 | #define VOP_OPEN(vp, cr, rv) \ | 293 | #define VOP_OPEN(vp, cr, rv) \ |