Lines Matching refs:len
205 buf->len = spd->partial[page_nr].len; in splice_to_pipe()
212 ret += buf->len; in splice_to_pipe()
242 return buf->len; in add_to_pipe()
296 struct pipe_inode_info *pipe, size_t len, in generic_file_splice_read() argument
303 iov_iter_pipe(&to, READ, pipe, len); in generic_file_splice_read()
366 struct pipe_inode_info *pipe, size_t len, in default_file_splice_read() argument
386 iov_iter_pipe(&to, READ, pipe, len + offset); in default_file_splice_read()
388 res = iov_iter_get_pages_alloc(&to, &pages, len + offset, &base); in default_file_splice_read()
404 pipe->bufs[to.idx].len -= offset; in default_file_splice_read()
407 size_t this_len = min_t(size_t, len, PAGE_SIZE - offset); in default_file_splice_read()
410 len -= this_len; in default_file_splice_read()
446 if (sd->len < sd->total_len && pipe->nrbufs > 1) in pipe_to_sendpage()
450 sd->len, &pos, more); in pipe_to_sendpage()
489 sd->len = buf->len; in splice_from_pipe_feed()
490 if (sd->len > sd->total_len) in splice_from_pipe_feed()
491 sd->len = sd->total_len; in splice_from_pipe_feed()
505 buf->len -= ret; in splice_from_pipe_feed()
508 sd->len -= ret; in splice_from_pipe_feed()
512 if (!buf->len) { in splice_from_pipe_feed()
647 loff_t *ppos, size_t len, unsigned int flags, in splice_from_pipe() argument
652 .total_len = len, in splice_from_pipe()
681 loff_t *ppos, size_t len, unsigned int flags) in iter_file_splice_write() argument
684 .total_len = len, in iter_file_splice_write()
724 size_t this_len = buf->len; in iter_file_splice_write()
757 if (ret >= buf->len) { in iter_file_splice_write()
758 ret -= buf->len; in iter_file_splice_write()
759 buf->len = 0; in iter_file_splice_write()
767 buf->len -= ret; in iter_file_splice_write()
794 ret = __kernel_write(sd->u.file, data + buf->offset, sd->len, &tmp); in write_pipe_buf()
802 size_t len, unsigned int flags) in default_file_splice_write() argument
806 ret = splice_from_pipe(pipe, out, ppos, len, flags, write_pipe_buf); in default_file_splice_write()
827 loff_t *ppos, size_t len, unsigned int flags) in generic_splice_sendpage() argument
829 return splice_from_pipe(pipe, out, ppos, len, flags, pipe_to_sendpage); in generic_splice_sendpage()
838 loff_t *ppos, size_t len, unsigned int flags) in do_splice_from() argument
848 return splice_write(pipe, out, ppos, len, flags); in do_splice_from()
855 struct pipe_inode_info *pipe, size_t len, in do_splice_to() argument
865 ret = rw_verify_area(READ, in, ppos, len); in do_splice_to()
869 if (unlikely(len > MAX_RW_COUNT)) in do_splice_to()
870 len = MAX_RW_COUNT; in do_splice_to()
877 return splice_read(in, ppos, pipe, len, flags); in do_splice_to()
899 size_t len; in splice_direct_to_actor() local
936 len = sd->total_len; in splice_direct_to_actor()
947 while (len) { in splice_direct_to_actor()
954 read_len = min(len, (size_t)pipe_pages << PAGE_SHIFT); in splice_direct_to_actor()
967 if (read_len < len) in splice_direct_to_actor()
983 len -= ret; in splice_direct_to_actor()
1042 loff_t *opos, size_t len, unsigned int flags) in do_splice_direct() argument
1045 .len = len, in do_splice_direct()
1046 .total_len = len, in do_splice_direct()
1060 ret = rw_verify_area(WRITE, out, opos, len); in do_splice_direct()
1093 size_t len, unsigned int flags);
1100 size_t len, unsigned int flags) in do_splice() argument
1127 return splice_pipe_to_pipe(ipipe, opipe, len, flags); in do_splice()
1148 ret = rw_verify_area(WRITE, out, &offset, len); in do_splice()
1156 ret = do_splice_from(ipipe, out, &offset, len, flags); in do_splice()
1189 len = min(len, (size_t)pipe_pages << PAGE_SHIFT); in do_splice()
1191 ret = do_splice_to(in, &offset, opipe, len, flags); in do_splice()
1236 buf.len = size; in iter_to_pipe()
1256 int n = copy_page_to_iter(buf->page, buf->offset, sd->len, sd->u.data); in pipe_to_user()
1257 return n == sd->len ? n : -EFAULT; in pipe_to_user()
1415 size_t, len, unsigned int, flags) in SYSCALL_DEFINE6() argument
1420 if (unlikely(!len)) in SYSCALL_DEFINE6()
1435 len, flags); in SYSCALL_DEFINE6()
1528 size_t len, unsigned int flags) in splice_pipe_to_pipe() argument
1590 if (len >= ibuf->len) { in splice_pipe_to_pipe()
1620 obuf->len = len; in splice_pipe_to_pipe()
1622 ibuf->offset += obuf->len; in splice_pipe_to_pipe()
1623 ibuf->len -= obuf->len; in splice_pipe_to_pipe()
1625 ret += obuf->len; in splice_pipe_to_pipe()
1626 len -= obuf->len; in splice_pipe_to_pipe()
1627 } while (len); in splice_pipe_to_pipe()
1649 size_t len, unsigned int flags) in link_pipe() argument
1700 if (obuf->len > len) in link_pipe()
1701 obuf->len = len; in link_pipe()
1704 ret += obuf->len; in link_pipe()
1705 len -= obuf->len; in link_pipe()
1707 } while (len); in link_pipe()
1734 static long do_tee(struct file *in, struct file *out, size_t len, in do_tee() argument
1757 ret = link_pipe(ipipe, opipe, len, flags); in do_tee()
1764 SYSCALL_DEFINE4(tee, int, fdin, int, fdout, size_t, len, unsigned int, flags) in SYSCALL_DEFINE4() argument
1772 if (unlikely(!len)) in SYSCALL_DEFINE4()
1783 len, flags); in SYSCALL_DEFINE4()