From: Johann Felix Soden <[EMAIL PROTECTED]> With SPLICE_F_NONBLOCK sys_tee should return number of duplicated bytes, not only -EAGAIN on success.
This patch also solves the problem, which is described on http://article.gmane.org/gmane.linux.kernel/642502. Signed-off-by: Johann Felix Soden <[EMAIL PROTECTED]> --- fs/splice.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/fs/splice.c b/fs/splice.c index 9b559ee..184fd66 100644 --- a/fs/splice.c +++ b/fs/splice.c @@ -1711,7 +1711,7 @@ static long do_tee(struct file *in, struct file *out, size_t len, ret = link_opipe_prep(opipe, flags); if (!ret) { ret = link_pipe(ipipe, opipe, len, flags); - if (!ret && (flags & SPLICE_F_NONBLOCK)) + if (ret < 0 && (flags & SPLICE_F_NONBLOCK)) ret = -EAGAIN; } } -- 1.5.4.2 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/