Skip to content

Commit c7f3685

Browse files
author
Al Viro
committed
Merge branch 'iov_iter' into for-davem-2
2 parents d6b00fe + aa58309 commit c7f3685

File tree

2 files changed

+426
-638
lines changed

2 files changed

+426
-638
lines changed

include/linux/uio.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ struct iov_iter {
3131
size_t count;
3232
union {
3333
const struct iovec *iov;
34+
const struct kvec *kvec;
3435
const struct bio_vec *bvec;
3536
};
3637
unsigned long nr_segs;
@@ -82,10 +83,13 @@ size_t copy_page_from_iter(struct page *page, size_t offset, size_t bytes,
8283
struct iov_iter *i);
8384
size_t copy_to_iter(void *addr, size_t bytes, struct iov_iter *i);
8485
size_t copy_from_iter(void *addr, size_t bytes, struct iov_iter *i);
86+
size_t copy_from_iter_nocache(void *addr, size_t bytes, struct iov_iter *i);
8587
size_t iov_iter_zero(size_t bytes, struct iov_iter *);
8688
unsigned long iov_iter_alignment(const struct iov_iter *i);
8789
void iov_iter_init(struct iov_iter *i, int direction, const struct iovec *iov,
8890
unsigned long nr_segs, size_t count);
91+
void iov_iter_kvec(struct iov_iter *i, int direction, const struct kvec *iov,
92+
unsigned long nr_segs, size_t count);
8993
ssize_t iov_iter_get_pages(struct iov_iter *i, struct page **pages,
9094
size_t maxsize, unsigned maxpages, size_t *start);
9195
ssize_t iov_iter_get_pages_alloc(struct iov_iter *i, struct page ***pages,
@@ -123,6 +127,8 @@ static inline void iov_iter_reexpand(struct iov_iter *i, size_t count)
123127
{
124128
i->count = count;
125129
}
130+
size_t csum_and_copy_to_iter(void *addr, size_t bytes, __wsum *csum, struct iov_iter *i);
131+
size_t csum_and_copy_from_iter(void *addr, size_t bytes, __wsum *csum, struct iov_iter *i);
126132

127133
int memcpy_fromiovec(unsigned char *kdata, struct iovec *iov, int len);
128134
int memcpy_toiovec(struct iovec *iov, unsigned char *kdata, int len);

0 commit comments

Comments
 (0)