Lines Matching refs:rx

34 static int rxrpc_service_prealloc_one(struct rxrpc_sock *rx,
43 struct rxrpc_net *rxnet = rxrpc_net(sock_net(&rx->sk));
49 max = rx->sk.sk_max_ack_backlog;
50 tmp = rx->sk.sk_ack_backlog;
73 struct rxrpc_peer *peer = rxrpc_alloc_peer(rx->local, gfp);
100 call = rxrpc_alloc_call(rx, gfp, debug_id);
110 write_lock(&rx->call_lock);
113 pp = &rx->calls.rb_node;
135 rb_insert_color(&call->sock_node, &rx->calls);
138 list_add(&call->sock_link, &rx->sock_calls);
140 write_unlock(&rx->call_lock);
153 write_unlock(&rx->call_lock);
163 int rxrpc_service_prealloc(struct rxrpc_sock *rx, gfp_t gfp)
165 struct rxrpc_backlog *b = rx->backlog;
171 rx->backlog = b;
180 void rxrpc_discard_prealloc(struct rxrpc_sock *rx)
182 struct rxrpc_backlog *b = rx->backlog;
183 struct rxrpc_net *rxnet = rxrpc_net(sock_net(&rx->sk));
188 rx->backlog = NULL;
193 spin_lock_bh(&rx->incoming_lock);
194 spin_unlock_bh(&rx->incoming_lock);
223 rcu_assign_pointer(call->socket, rx);
224 if (rx->discard_new_call) {
226 rx->discard_new_call(call, call->user_call_ID);
232 rxrpc_release_call(rx, call);
260 static struct rxrpc_call *rxrpc_alloc_incoming_call(struct rxrpc_sock *rx,
268 struct rxrpc_backlog *b = rx->backlog;
302 rxrpc_new_incoming_peer(rx, local, peer);
313 rxrpc_new_incoming_connection(rx, conn, sec, key, skb);
349 struct rxrpc_sock *rx,
361 spin_lock(&rx->incoming_lock);
362 if (rx->sk.sk_state == RXRPC_SERVER_LISTEN_DISABLED ||
363 rx->sk.sk_state == RXRPC_CLOSE) {
374 * rx->incoming_lock, so the values should remain stable.
378 if (!conn && !rxrpc_look_up_server_security(local, rx, &sec, &key, skb))
381 call = rxrpc_alloc_incoming_call(rx, local, peer, conn, sec, key, skb);
392 rxrpc_incoming_call(rx, call, skb);
395 if (rx->notify_new_call)
396 rx->notify_new_call(&rx->sk, call, call->user_call_ID);
425 spin_unlock(&rx->incoming_lock);
440 spin_unlock(&rx->incoming_lock);
448 int rxrpc_user_charge_accept(struct rxrpc_sock *rx, unsigned long user_call_ID)
450 struct rxrpc_backlog *b = rx->backlog;
452 if (rx->sk.sk_state == RXRPC_CLOSE)
455 return rxrpc_service_prealloc_one(rx, b, NULL, NULL, user_call_ID,
481 struct rxrpc_sock *rx = rxrpc_sk(sock->sk);
482 struct rxrpc_backlog *b = rx->backlog;
487 return rxrpc_service_prealloc_one(rx, b, notify_rx,