Lines Matching refs:peer

103 static void rxrpc_adjust_mtu(struct rxrpc_peer *peer, unsigned int mtu)  in rxrpc_adjust_mtu()  argument
106 if (mtu > 0 && peer->if_mtu == 65535 && mtu < peer->if_mtu) in rxrpc_adjust_mtu()
107 peer->if_mtu = mtu; in rxrpc_adjust_mtu()
111 mtu = peer->if_mtu; in rxrpc_adjust_mtu()
118 if (mtu < peer->hdrsize) in rxrpc_adjust_mtu()
119 mtu = peer->hdrsize + 4; in rxrpc_adjust_mtu()
123 if (mtu < peer->mtu) { in rxrpc_adjust_mtu()
124 spin_lock(&peer->lock); in rxrpc_adjust_mtu()
125 peer->mtu = mtu; in rxrpc_adjust_mtu()
126 peer->maxdata = peer->mtu - peer->hdrsize; in rxrpc_adjust_mtu()
127 spin_unlock(&peer->lock); in rxrpc_adjust_mtu()
138 struct rxrpc_peer *peer = NULL; in rxrpc_input_error() local
148 peer = rxrpc_lookup_peer_local_rcu(local, skb, &srx); in rxrpc_input_error()
149 if (peer && !rxrpc_get_peer_maybe(peer, rxrpc_peer_get_input_error)) in rxrpc_input_error()
150 peer = NULL; in rxrpc_input_error()
152 if (!peer) in rxrpc_input_error()
155 trace_rxrpc_rx_icmp(peer, &serr->ee, &srx); in rxrpc_input_error()
160 rxrpc_adjust_mtu(peer, serr->ee.ee_info); in rxrpc_input_error()
164 rxrpc_store_error(peer, skb); in rxrpc_input_error()
166 rxrpc_put_peer(peer, rxrpc_peer_put_input_error); in rxrpc_input_error()
172 static void rxrpc_store_error(struct rxrpc_peer *peer, struct sk_buff *skb) in rxrpc_store_error() argument
196 rxrpc_distribute_error(peer, skb, compl, err); in rxrpc_store_error()
202 static void rxrpc_distribute_error(struct rxrpc_peer *peer, struct sk_buff *skb, in rxrpc_distribute_error() argument
208 spin_lock(&peer->lock); in rxrpc_distribute_error()
209 hlist_move_list(&peer->error_targets, &error_targets); in rxrpc_distribute_error()
215 spin_unlock(&peer->lock); in rxrpc_distribute_error()
221 spin_lock(&peer->lock); in rxrpc_distribute_error()
224 spin_unlock(&peer->lock); in rxrpc_distribute_error()
235 struct rxrpc_peer *peer; in rxrpc_peer_keepalive_dispatch() local
244 peer = list_entry(collector->next, in rxrpc_peer_keepalive_dispatch()
247 list_del_init(&peer->keepalive_link); in rxrpc_peer_keepalive_dispatch()
248 if (!rxrpc_get_peer_maybe(peer, rxrpc_peer_get_keepalive)) in rxrpc_peer_keepalive_dispatch()
251 use = __rxrpc_use_local(peer->local, rxrpc_local_use_peer_keepalive); in rxrpc_peer_keepalive_dispatch()
255 keepalive_at = peer->last_tx_at + RXRPC_KEEPALIVE_TIME; in rxrpc_peer_keepalive_dispatch()
258 cursor, peer->debug_id, slot, &peer->srx.transport); in rxrpc_peer_keepalive_dispatch()
262 rxrpc_send_keepalive(peer); in rxrpc_peer_keepalive_dispatch()
273 list_add_tail(&peer->keepalive_link, in rxrpc_peer_keepalive_dispatch()
276 rxrpc_unuse_local(peer->local, rxrpc_local_unuse_peer_keepalive); in rxrpc_peer_keepalive_dispatch()
278 rxrpc_put_peer(peer, rxrpc_peer_put_keepalive); in rxrpc_peer_keepalive_dispatch()