aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorAlexander Viro <viro@www.linux.org.uk>2004-07-15 22:04:58 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2004-07-15 22:04:58 -0700
commit8af0afb24eaf9df5aa5a2ea720c3613431f04ad5 (patch)
tree0b50c775c70d0e65dcd9596b885aef6f08a55c32 /net
parent1a7d7787922f184804ef98e45c8606f8f16daf43 (diff)
downloadhistory-8af0afb24eaf9df5aa5a2ea720c3613431f04ad5.tar.gz
[PATCH] sparse: iovec cleanups - rxrpc
rxrpc (low-level part of afs) switched to kernel_...msg(); it already was using kvec instead of iovec.
Diffstat (limited to 'net')
-rw-r--r--net/rxrpc/connection.c17
-rw-r--r--net/rxrpc/transport.c20
2 files changed, 5 insertions, 32 deletions
diff --git a/net/rxrpc/connection.c b/net/rxrpc/connection.c
index 11c703bc695631..929b82f48aeba9 100644
--- a/net/rxrpc/connection.c
+++ b/net/rxrpc/connection.c
@@ -620,7 +620,6 @@ int rxrpc_conn_sendmsg(struct rxrpc_connection *conn,
struct rxrpc_message *msg)
{
struct msghdr msghdr;
- mm_segment_t oldfs;
int ret;
_enter("%p{%d}", conn, ntohs(conn->addr.sin_port));
@@ -634,12 +633,6 @@ int rxrpc_conn_sendmsg(struct rxrpc_connection *conn,
/* set up the message to be transmitted */
msghdr.msg_name = &conn->addr;
msghdr.msg_namelen = sizeof(conn->addr);
- /*
- * the following is safe, since for compiler definitions of kvec and
- * iovec are identical, yielding the same in-core layout and alignment
- */
- msghdr.msg_iov = (struct iovec *)msg->data;
- msghdr.msg_iovlen = msg->dcount;
msghdr.msg_control = NULL;
msghdr.msg_controllen = 0;
msghdr.msg_flags = MSG_CONFIRM | MSG_DONTWAIT;
@@ -651,15 +644,11 @@ int rxrpc_conn_sendmsg(struct rxrpc_connection *conn,
htons(conn->addr.sin_port));
/* send the message */
- oldfs = get_fs();
- set_fs(KERNEL_DS);
- ret = sock_sendmsg(conn->trans->socket, &msghdr, msg->dsize);
- set_fs(oldfs);
-
+ ret = kernel_sendmsg(conn->trans->socket, &msghdr,
+ msg->data, msg->dcount, msg->dsize);
if (ret < 0) {
msg->state = RXRPC_MSG_ERROR;
- }
- else {
+ } else {
msg->state = RXRPC_MSG_SENT;
ret = 0;
diff --git a/net/rxrpc/transport.c b/net/rxrpc/transport.c
index 92bcf9bf41452d..577001512db260 100644
--- a/net/rxrpc/transport.c
+++ b/net/rxrpc/transport.c
@@ -612,7 +612,6 @@ int rxrpc_trans_immediate_abort(struct rxrpc_transport *trans,
struct sockaddr_in sin;
struct msghdr msghdr;
struct kvec iov[2];
- mm_segment_t oldfs;
uint32_t _error;
int len, ret;
@@ -649,12 +648,6 @@ int rxrpc_trans_immediate_abort(struct rxrpc_transport *trans,
msghdr.msg_name = &sin;
msghdr.msg_namelen = sizeof(sin);
- /*
- * the following is safe, since for compiler definitions of kvec and
- * iovec are identical, yielding the same in-core layout and alignment
- */
- msghdr.msg_iov = (struct iovec *)iov;
- msghdr.msg_iovlen = 2;
msghdr.msg_control = NULL;
msghdr.msg_controllen = 0;
msghdr.msg_flags = MSG_DONTWAIT;
@@ -666,10 +659,7 @@ int rxrpc_trans_immediate_abort(struct rxrpc_transport *trans,
htons(sin.sin_port));
/* send the message */
- oldfs = get_fs();
- set_fs(KERNEL_DS);
- ret = sock_sendmsg(trans->socket, &msghdr, len);
- set_fs(oldfs);
+ ret = kernel_sendmsg(trans->socket, &msghdr, iov, 2, len);
_leave(" = %d", ret);
return ret;
@@ -688,7 +678,6 @@ static void rxrpc_trans_receive_error_report(struct rxrpc_transport *trans)
struct list_head connq, *_p;
struct errormsg emsg;
struct msghdr msg;
- mm_segment_t oldfs;
uint16_t port;
int local, err;
@@ -700,17 +689,12 @@ static void rxrpc_trans_receive_error_report(struct rxrpc_transport *trans)
/* try and receive an error message */
msg.msg_name = &sin;
msg.msg_namelen = sizeof(sin);
- msg.msg_iov = NULL;
- msg.msg_iovlen = 0;
msg.msg_control = &emsg;
msg.msg_controllen = sizeof(emsg);
msg.msg_flags = 0;
- oldfs = get_fs();
- set_fs(KERNEL_DS);
- err = sock_recvmsg(trans->socket, &msg, 0,
+ err = kernel_recvmsg(trans->socket, &msg, NULL, 0, 0,
MSG_ERRQUEUE | MSG_DONTWAIT | MSG_TRUNC);
- set_fs(oldfs);
if (err == -EAGAIN) {
_leave("");