• Home
  • Raw
  • Download

Lines Matching refs:iov

21 	__p = i->iov;					\
94 const struct iovec *iov; \
96 iterate_iovec(i, n, v, iov, skip, (I)) \
127 const struct iovec *iov; \
129 iterate_iovec(i, n, v, iov, skip, (I)) \
130 if (skip == iov->iov_len) { \
131 iov++; \
134 i->nr_segs -= iov - i->iov; \
135 i->iov = iov; \
168 const struct iovec *iov; in copy_page_to_iter_iovec() local
180 iov = i->iov; in copy_page_to_iter_iovec()
182 buf = iov->iov_base + skip; in copy_page_to_iter_iovec()
183 copy = min(bytes, iov->iov_len - skip); in copy_page_to_iter_iovec()
197 iov++; in copy_page_to_iter_iovec()
198 buf = iov->iov_base; in copy_page_to_iter_iovec()
199 copy = min(bytes, iov->iov_len); in copy_page_to_iter_iovec()
213 copy = min(bytes, iov->iov_len - skip); in copy_page_to_iter_iovec()
225 iov++; in copy_page_to_iter_iovec()
226 buf = iov->iov_base; in copy_page_to_iter_iovec()
227 copy = min(bytes, iov->iov_len); in copy_page_to_iter_iovec()
237 if (skip == iov->iov_len) { in copy_page_to_iter_iovec()
238 iov++; in copy_page_to_iter_iovec()
242 i->nr_segs -= iov - i->iov; in copy_page_to_iter_iovec()
243 i->iov = iov; in copy_page_to_iter_iovec()
252 const struct iovec *iov; in copy_page_from_iter_iovec() local
264 iov = i->iov; in copy_page_from_iter_iovec()
266 buf = iov->iov_base + skip; in copy_page_from_iter_iovec()
267 copy = min(bytes, iov->iov_len - skip); in copy_page_from_iter_iovec()
281 iov++; in copy_page_from_iter_iovec()
282 buf = iov->iov_base; in copy_page_from_iter_iovec()
283 copy = min(bytes, iov->iov_len); in copy_page_from_iter_iovec()
297 copy = min(bytes, iov->iov_len - skip); in copy_page_from_iter_iovec()
309 iov++; in copy_page_from_iter_iovec()
310 buf = iov->iov_base; in copy_page_from_iter_iovec()
311 copy = min(bytes, iov->iov_len); in copy_page_from_iter_iovec()
321 if (skip == iov->iov_len) { in copy_page_from_iter_iovec()
322 iov++; in copy_page_from_iter_iovec()
326 i->nr_segs -= iov - i->iov; in copy_page_from_iter_iovec()
327 i->iov = iov; in copy_page_from_iter_iovec()
434 const struct iovec *iov; in iov_iter_fault_in_readable() local
439 iterate_iovec(i, bytes, v, iov, skip, ({ in iov_iter_fault_in_readable()
450 const struct iovec *iov, unsigned long nr_segs, in iov_iter_init() argument
459 i->kvec = (struct kvec *)iov; in iov_iter_init()
462 i->iov = iov; in iov_iter_init()
1144 const struct iovec *iov = i->iov; in iov_iter_revert() local
1146 size_t n = (--iov)->iov_len; in iov_iter_revert()
1149 i->iov = iov; in iov_iter_revert()
1173 return min(i->count, i->iov->iov_len - i->iov_offset); in iov_iter_single_seg_count()
1658 return new->iov = kmemdup(new->iov, in dup_iter()
1664 static int copy_compat_iovec_from_user(struct iovec *iov, in copy_compat_iovec_from_user() argument
1686 iov[i].iov_base = compat_ptr(buf); in copy_compat_iovec_from_user()
1687 iov[i].iov_len = len; in copy_compat_iovec_from_user()
1696 static int copy_iovec_from_user(struct iovec *iov, in copy_iovec_from_user() argument
1701 if (copy_from_user(iov, uvec, nr_segs * sizeof(*uvec))) in copy_iovec_from_user()
1704 if ((ssize_t)iov[seg].iov_len < 0) in copy_iovec_from_user()
1715 struct iovec *iov = fast_iov; in iovec_from_user() local
1724 return iov; in iovec_from_user()
1728 iov = kmalloc_array(nr_segs, sizeof(struct iovec), GFP_KERNEL); in iovec_from_user()
1729 if (!iov) in iovec_from_user()
1734 ret = copy_compat_iovec_from_user(iov, uvec, nr_segs); in iovec_from_user()
1736 ret = copy_iovec_from_user(iov, uvec, nr_segs); in iovec_from_user()
1738 if (iov != fast_iov) in iovec_from_user()
1739 kfree(iov); in iovec_from_user()
1743 return iov; in iovec_from_user()
1752 struct iovec *iov; in __import_iovec() local
1754 iov = iovec_from_user(uvec, nr_segs, fast_segs, *iovp, compat); in __import_iovec()
1755 if (IS_ERR(iov)) { in __import_iovec()
1757 return PTR_ERR(iov); in __import_iovec()
1769 ssize_t len = (ssize_t)iov[seg].iov_len; in __import_iovec()
1771 if (!access_ok(iov[seg].iov_base, len)) { in __import_iovec()
1772 if (iov != *iovp) in __import_iovec()
1773 kfree(iov); in __import_iovec()
1780 iov[seg].iov_len = len; in __import_iovec()
1785 iov_iter_init(i, type, iov, nr_segs, total_len); in __import_iovec()
1786 if (iov == *iovp) in __import_iovec()
1789 *iovp = iov; in __import_iovec()
1825 struct iovec *iov, struct iov_iter *i) in import_single_range() argument
1832 iov->iov_base = buf; in import_single_range()
1833 iov->iov_len = len; in import_single_range()
1834 iov_iter_init(i, rw, iov, 1, len); in import_single_range()