Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d366d39885b4a56eb90c7670deb46d82501579ad
Commit:     d366d39885b4a56eb90c7670deb46d82501579ad
Parent:     85f6038f2170e3335dda09c3dfb0f83110e87019
Author:     Jens Axboe <[EMAIL PROTECTED]>
AuthorDate: Fri Jun 1 14:54:11 2007 +0200
Committer:  Jens Axboe <[EMAIL PROTECTED]>
CommitDate: Fri Jun 8 08:32:38 2007 +0200

    splice: move inode size check into generic_file_splice_read()
    
    Signed-off-by: Jens Axboe <[EMAIL PROTECTED]>
---
 fs/splice.c |   19 +++++++++----------
 1 files changed, 9 insertions(+), 10 deletions(-)

diff --git a/fs/splice.c b/fs/splice.c
index 12f2828..228a487 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -478,10 +478,18 @@ ssize_t generic_file_splice_read(struct file *in, loff_t 
*ppos,
 {
        ssize_t spliced;
        int ret;
+       loff_t isize, left;
+
+       isize = i_size_read(in->f_mapping->host);
+       if (unlikely(*ppos >= isize))
+               return 0;
+
+       left = isize - *ppos;
+       if (unlikely(left < len))
+               len = left;
 
        ret = 0;
        spliced = 0;
-
        while (len) {
                ret = __generic_file_splice_read(in, ppos, pipe, len, flags);
 
@@ -922,7 +930,6 @@ static long do_splice_to(struct file *in, loff_t *ppos,
                         struct pipe_inode_info *pipe, size_t len,
                         unsigned int flags)
 {
-       loff_t isize, left;
        int ret;
 
        if (unlikely(!in->f_op || !in->f_op->splice_read))
@@ -935,14 +942,6 @@ static long do_splice_to(struct file *in, loff_t *ppos,
        if (unlikely(ret < 0))
                return ret;
 
-       isize = i_size_read(in->f_mapping->host);
-       if (unlikely(*ppos >= isize))
-               return 0;
-       
-       left = isize - *ppos;
-       if (unlikely(left < len))
-               len = left;
-
        return in->f_op->splice_read(in, ppos, pipe, len, flags);
 }
 
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to