diff options
author | Jens Axboe <jens.axboe@oracle.com> | 2007-06-01 05:49:19 -0400 |
---|---|---|
committer | Jens Axboe <jens.axboe@oracle.com> | 2007-07-10 02:04:13 -0400 |
commit | 5ffc4ef45b3b0a57872f631b4e4ceb8ace0d7496 (patch) | |
tree | 437ec32a58ac5e4794565b2bbb3da6611f0d6a04 /fs/ecryptfs | |
parent | 534f2aaa6ab07cd71164180bc958a7dcde41db11 (diff) |
sendfile: remove .sendfile from filesystems that use generic_file_sendfile()
They can use generic_file_splice_read() instead. Since sys_sendfile() now
prefers that, there should be no change in behaviour.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'fs/ecryptfs')
-rw-r--r-- | fs/ecryptfs/file.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/fs/ecryptfs/file.c b/fs/ecryptfs/file.c index 59288d817078..94f456fe4d9b 100644 --- a/fs/ecryptfs/file.c +++ b/fs/ecryptfs/file.c | |||
@@ -338,16 +338,17 @@ static int ecryptfs_fasync(int fd, struct file *file, int flag) | |||
338 | return rc; | 338 | return rc; |
339 | } | 339 | } |
340 | 340 | ||
341 | static ssize_t ecryptfs_sendfile(struct file *file, loff_t * ppos, | 341 | static ssize_t ecryptfs_splice_read(struct file *file, loff_t * ppos, |
342 | size_t count, read_actor_t actor, void *target) | 342 | struct pipe_inode_info *pipe, size_t count, |
343 | unsigned int flags) | ||
343 | { | 344 | { |
344 | struct file *lower_file = NULL; | 345 | struct file *lower_file = NULL; |
345 | int rc = -EINVAL; | 346 | int rc = -EINVAL; |
346 | 347 | ||
347 | lower_file = ecryptfs_file_to_lower(file); | 348 | lower_file = ecryptfs_file_to_lower(file); |
348 | if (lower_file->f_op && lower_file->f_op->sendfile) | 349 | if (lower_file->f_op && lower_file->f_op->splice_read) |
349 | rc = lower_file->f_op->sendfile(lower_file, ppos, count, | 350 | rc = lower_file->f_op->splice_read(lower_file, ppos, pipe, |
350 | actor, target); | 351 | count, flags); |
351 | 352 | ||
352 | return rc; | 353 | return rc; |
353 | } | 354 | } |
@@ -364,7 +365,7 @@ const struct file_operations ecryptfs_dir_fops = { | |||
364 | .release = ecryptfs_release, | 365 | .release = ecryptfs_release, |
365 | .fsync = ecryptfs_fsync, | 366 | .fsync = ecryptfs_fsync, |
366 | .fasync = ecryptfs_fasync, | 367 | .fasync = ecryptfs_fasync, |
367 | .sendfile = ecryptfs_sendfile, | 368 | .splice_read = ecryptfs_splice_read, |
368 | }; | 369 | }; |
369 | 370 | ||
370 | const struct file_operations ecryptfs_main_fops = { | 371 | const struct file_operations ecryptfs_main_fops = { |
@@ -381,7 +382,7 @@ const struct file_operations ecryptfs_main_fops = { | |||
381 | .release = ecryptfs_release, | 382 | .release = ecryptfs_release, |
382 | .fsync = ecryptfs_fsync, | 383 | .fsync = ecryptfs_fsync, |
383 | .fasync = ecryptfs_fasync, | 384 | .fasync = ecryptfs_fasync, |
384 | .sendfile = ecryptfs_sendfile, | 385 | .splice_read = ecryptfs_splice_read, |
385 | }; | 386 | }; |
386 | 387 | ||
387 | static int | 388 | static int |