rxrpc: Prune the contents of the rxrpc_conn_proto struct
Prune the contents of the rxrpc_conn_proto struct. Most of the fields aren't used anymore. Signed-off-by: David Howells <dhowells@redhat.com>
This commit is contained in:
parent
001c112249
commit
e8d70ce177
@ -229,18 +229,12 @@ struct rxrpc_peer {
|
||||
* Keys for matching a connection.
|
||||
*/
|
||||
struct rxrpc_conn_proto {
|
||||
unsigned long hash_key;
|
||||
struct rxrpc_local *local; /* Representation of local endpoint */
|
||||
u32 epoch; /* epoch of this connection */
|
||||
u32 cid; /* connection ID */
|
||||
u8 in_clientflag; /* RXRPC_CLIENT_INITIATED if we are server */
|
||||
u8 addr_size; /* Size of the address */
|
||||
sa_family_t family; /* Transport protocol */
|
||||
__be16 port; /* Peer UDP/UDP6 port */
|
||||
union { /* Peer address */
|
||||
struct in_addr ipv4_addr;
|
||||
struct in6_addr ipv6_addr;
|
||||
u32 raw_addr[0];
|
||||
union {
|
||||
struct {
|
||||
u32 epoch; /* epoch of this connection */
|
||||
u32 cid; /* connection ID */
|
||||
};
|
||||
u64 index_key;
|
||||
};
|
||||
};
|
||||
|
||||
@ -584,7 +578,7 @@ static inline bool rxrpc_conn_is_client(const struct rxrpc_connection *conn)
|
||||
|
||||
static inline bool rxrpc_conn_is_service(const struct rxrpc_connection *conn)
|
||||
{
|
||||
return conn->proto.in_clientflag;
|
||||
return !rxrpc_conn_is_client(conn);
|
||||
}
|
||||
|
||||
static inline void rxrpc_get_connection(struct rxrpc_connection *conn)
|
||||
|
@ -566,7 +566,7 @@ struct rxrpc_call *rxrpc_incoming_call(struct rxrpc_sock *rx,
|
||||
}
|
||||
call->epoch = conn->proto.epoch;
|
||||
call->service_id = conn->params.service_id;
|
||||
call->in_clientflag = conn->proto.in_clientflag;
|
||||
call->in_clientflag = RXRPC_CLIENT_INITIATED;
|
||||
/* Add the new call to the hashtable */
|
||||
rxrpc_call_hash_add(call);
|
||||
|
||||
|
@ -132,22 +132,11 @@ rxrpc_alloc_client_connection(struct rxrpc_conn_parameters *cp, gfp_t gfp)
|
||||
}
|
||||
|
||||
conn->params = *cp;
|
||||
conn->proto.local = cp->local;
|
||||
conn->proto.epoch = rxrpc_epoch;
|
||||
conn->proto.cid = 0;
|
||||
conn->proto.in_clientflag = 0;
|
||||
conn->proto.family = cp->peer->srx.transport.family;
|
||||
conn->out_clientflag = RXRPC_CLIENT_INITIATED;
|
||||
conn->state = RXRPC_CONN_CLIENT;
|
||||
|
||||
switch (conn->proto.family) {
|
||||
case AF_INET:
|
||||
conn->proto.addr_size = sizeof(conn->proto.ipv4_addr);
|
||||
conn->proto.ipv4_addr = cp->peer->srx.transport.sin.sin_addr;
|
||||
conn->proto.port = cp->peer->srx.transport.sin.sin_port;
|
||||
break;
|
||||
}
|
||||
|
||||
ret = rxrpc_get_client_connection_id(conn, gfp);
|
||||
if (ret < 0)
|
||||
goto error_0;
|
||||
|
@ -70,10 +70,8 @@ struct rxrpc_connection *rxrpc_incoming_connection(struct rxrpc_local *local,
|
||||
return ERR_PTR(-ENOMEM);
|
||||
}
|
||||
|
||||
candidate->proto.local = local;
|
||||
candidate->proto.epoch = sp->hdr.epoch;
|
||||
candidate->proto.cid = sp->hdr.cid & RXRPC_CIDMASK;
|
||||
candidate->proto.in_clientflag = RXRPC_CLIENT_INITIATED;
|
||||
candidate->params.local = local;
|
||||
candidate->params.peer = peer;
|
||||
candidate->params.service_id = sp->hdr.serviceId;
|
||||
|
Loading…
Reference in New Issue
Block a user