use less confusing names for iov_iter direction initializers
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2218388
commit de4eda9de2d957ef2d6a8365a01e26a435e958cb
RHEL: The core of this patch was already backported
in 0d33f8e1f3
.
This patch is just a backport of the CIFS part of the upstream
patch that was not part of 0d33...
READ/WRITE proved to be actively confusing - the meanings are
"data destination, as used with read(2)" and "data source, as
used with write(2)", but people keep interpreting those as
"we read data from it" and "we write data to it", i.e. exactly
the wrong way.
Call them ITER_DEST and ITER_SOURCE - at least that is harder
to misinterpret...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
(cherry picked from commit de4eda9de2d957ef2d6a8365a01e26a435e958cb)
Signed-off-by: Ronnie Sahlberg <lsahlber@redhat.com>
This commit is contained in:
parent
e1c72cb9ff
commit
a9e6d7970e
|
@ -734,7 +734,7 @@ cifs_read_from_socket(struct TCP_Server_Info *server, char *buf,
|
|||
{
|
||||
struct msghdr smb_msg = {};
|
||||
struct kvec iov = {.iov_base = buf, .iov_len = to_read};
|
||||
iov_iter_kvec(&smb_msg.msg_iter, READ, &iov, 1, to_read);
|
||||
iov_iter_kvec(&smb_msg.msg_iter, ITER_DEST, &iov, 1, to_read);
|
||||
|
||||
return cifs_readv_from_socket(server, &smb_msg);
|
||||
}
|
||||
|
@ -749,7 +749,7 @@ cifs_discard_from_socket(struct TCP_Server_Info *server, size_t to_read)
|
|||
* and cifs_readv_from_socket sets msg_control and msg_controllen
|
||||
* so little to initialize in struct msghdr
|
||||
*/
|
||||
iov_iter_discard(&smb_msg.msg_iter, READ, to_read);
|
||||
iov_iter_discard(&smb_msg.msg_iter, ITER_DEST, to_read);
|
||||
|
||||
return cifs_readv_from_socket(server, &smb_msg);
|
||||
}
|
||||
|
@ -761,7 +761,7 @@ cifs_read_page_from_socket(struct TCP_Server_Info *server, struct page *page,
|
|||
struct msghdr smb_msg = {};
|
||||
struct bio_vec bv = {
|
||||
.bv_page = page, .bv_len = to_read, .bv_offset = page_offset};
|
||||
iov_iter_bvec(&smb_msg.msg_iter, READ, &bv, 1, to_read);
|
||||
iov_iter_bvec(&smb_msg.msg_iter, ITER_DEST, &bv, 1, to_read);
|
||||
return cifs_readv_from_socket(server, &smb_msg);
|
||||
}
|
||||
|
||||
|
|
|
@ -3542,7 +3542,7 @@ static ssize_t __cifs_writev(
|
|||
ctx->iter = *from;
|
||||
ctx->len = len;
|
||||
} else {
|
||||
rc = setup_aio_ctx_iter(ctx, from, WRITE);
|
||||
rc = setup_aio_ctx_iter(ctx, from, ITER_SOURCE);
|
||||
if (rc) {
|
||||
kref_put(&ctx->refcount, cifs_aio_ctx_release);
|
||||
return rc;
|
||||
|
@ -4287,7 +4287,7 @@ static ssize_t __cifs_readv(
|
|||
ctx->iter = *to;
|
||||
ctx->len = len;
|
||||
} else {
|
||||
rc = setup_aio_ctx_iter(ctx, to, READ);
|
||||
rc = setup_aio_ctx_iter(ctx, to, ITER_DEST);
|
||||
if (rc) {
|
||||
kref_put(&ctx->refcount, cifs_aio_ctx_release);
|
||||
return rc;
|
||||
|
|
|
@ -150,7 +150,7 @@ static int fscache_fallback_read_page(struct inode *inode, struct page *page)
|
|||
bvec[0].bv_page = page;
|
||||
bvec[0].bv_offset = 0;
|
||||
bvec[0].bv_len = PAGE_SIZE;
|
||||
iov_iter_bvec(&iter, READ, bvec, ARRAY_SIZE(bvec), PAGE_SIZE);
|
||||
iov_iter_bvec(&iter, ITER_DEST, bvec, ARRAY_SIZE(bvec), PAGE_SIZE);
|
||||
|
||||
ret = fscache_begin_read_operation(&cres, cookie);
|
||||
if (ret < 0)
|
||||
|
@ -180,7 +180,7 @@ static int fscache_fallback_write_page(struct inode *inode, struct page *page,
|
|||
bvec[0].bv_page = page;
|
||||
bvec[0].bv_offset = 0;
|
||||
bvec[0].bv_len = PAGE_SIZE;
|
||||
iov_iter_bvec(&iter, WRITE, bvec, ARRAY_SIZE(bvec), PAGE_SIZE);
|
||||
iov_iter_bvec(&iter, ITER_SOURCE, bvec, ARRAY_SIZE(bvec), PAGE_SIZE);
|
||||
|
||||
ret = fscache_begin_write_operation(&cres, cookie);
|
||||
if (ret < 0)
|
||||
|
|
|
@ -4741,13 +4741,13 @@ handle_read_data(struct TCP_Server_Info *server, struct mid_q_entry *mid,
|
|||
return 0;
|
||||
}
|
||||
|
||||
iov_iter_bvec(&iter, WRITE, bvec, npages, data_len);
|
||||
iov_iter_bvec(&iter, ITER_SOURCE, bvec, npages, data_len);
|
||||
} else if (buf_len >= data_offset + data_len) {
|
||||
/* read response payload is in buf */
|
||||
WARN_ONCE(npages > 0, "read data can be either in buf or in pages");
|
||||
iov.iov_base = buf + data_offset;
|
||||
iov.iov_len = data_len;
|
||||
iov_iter_kvec(&iter, WRITE, &iov, 1, data_len);
|
||||
iov_iter_kvec(&iter, ITER_SOURCE, &iov, 1, data_len);
|
||||
} else {
|
||||
/* read response payload cannot be in both buf and pages */
|
||||
WARN_ONCE(1, "buf can not contain only a part of read data");
|
||||
|
|
|
@ -347,7 +347,7 @@ __smb_send_rqst(struct TCP_Server_Info *server, int num_rqst,
|
|||
.iov_base = &rfc1002_marker,
|
||||
.iov_len = 4
|
||||
};
|
||||
iov_iter_kvec(&smb_msg.msg_iter, WRITE, &hiov, 1, 4);
|
||||
iov_iter_kvec(&smb_msg.msg_iter, ITER_SOURCE, &hiov, 1, 4);
|
||||
rc = smb_send_kvec(server, &smb_msg, &sent);
|
||||
if (rc < 0)
|
||||
goto unmask;
|
||||
|
@ -368,7 +368,7 @@ __smb_send_rqst(struct TCP_Server_Info *server, int num_rqst,
|
|||
size += iov[i].iov_len;
|
||||
}
|
||||
|
||||
iov_iter_kvec(&smb_msg.msg_iter, WRITE, iov, n_vec, size);
|
||||
iov_iter_kvec(&smb_msg.msg_iter, ITER_SOURCE, iov, n_vec, size);
|
||||
|
||||
rc = smb_send_kvec(server, &smb_msg, &sent);
|
||||
if (rc < 0)
|
||||
|
@ -384,7 +384,7 @@ __smb_send_rqst(struct TCP_Server_Info *server, int num_rqst,
|
|||
rqst_page_get_length(&rqst[j], i, &bvec.bv_len,
|
||||
&bvec.bv_offset);
|
||||
|
||||
iov_iter_bvec(&smb_msg.msg_iter, WRITE,
|
||||
iov_iter_bvec(&smb_msg.msg_iter, ITER_SOURCE,
|
||||
&bvec, 1, bvec.bv_len);
|
||||
rc = smb_send_kvec(server, &smb_msg, &sent);
|
||||
if (rc < 0)
|
||||
|
|
Loading…
Reference in New Issue