Lines Matching defs:local
17 * handle data received on the local endpoint
29 struct rxrpc_local *local = rcu_dereference_sk_user_data(udp_sk);
31 if (unlikely(!local)) {
40 rx_queue = &local->rx_queue;
43 !skb_queue_empty(&local->rx_delay_queue)) {
45 rx_queue = &local->rx_delay_queue;
50 rxrpc_wake_up_io_thread(local);
55 * Handle an error received on the local endpoint.
59 struct rxrpc_local *local;
63 local = rcu_dereference_sk_user_data(sk);
64 if (unlikely(!local)) {
72 skb_queue_tail(&local->rx_queue, skb);
75 rxrpc_wake_up_io_thread(local);
102 * Process event packets targeted at a local endpoint.
104 static bool rxrpc_input_version(struct rxrpc_local *local, struct sk_buff *skb)
114 rxrpc_send_version_request(local, &sp->hdr, skb);
162 * Process packets received on the local endpoint
164 static bool rxrpc_input_packet(struct rxrpc_local *local, struct sk_buff **_skb)
195 return rxrpc_input_version(local, skb);
262 if (peer_srx.transport.family != local->srx.transport.family &&
264 local->srx.transport.family != AF_INET6)) {
267 local->srx.transport.family);
273 conn = rxrpc_find_client_connection_rcu(local, &peer_srx, skb);
290 peer = rxrpc_lookup_peer_rcu(local, &peer_srx);
293 return rxrpc_new_incoming_call(local, NULL, NULL, &peer_srx, skb);
308 ret = rxrpc_new_incoming_call(local, peer, NULL, &peer_srx, skb);
401 return rxrpc_new_incoming_call(conn->local, conn->peer, conn,
417 struct rxrpc_local *local = data;
425 complete(&local->io_thread_ready);
432 rxrpc_inc_stat(local->rxnet, stat_io_loop);
435 conn = list_first_entry_or_null(&local->conn_attend_q,
439 spin_lock_bh(&local->lock);
441 spin_unlock_bh(&local->lock);
449 &local->client_conn_flags))
450 rxrpc_discard_expired_client_conns(local);
453 if ((call = list_first_entry_or_null(&local->call_attend_q,
456 spin_lock_bh(&local->lock);
458 spin_unlock_bh(&local->lock);
466 if (!list_empty(&local->new_client_calls))
467 rxrpc_connect_client_calls(local);
475 if (!rxrpc_input_packet(local, &skb))
476 rxrpc_reject_packet(local, skb);
481 rxrpc_input_error(local, skb);
500 while ((skb = skb_peek(&local->rx_delay_queue))) {
503 skb = skb_dequeue(&local->rx_delay_queue);
504 skb_queue_tail(&local->rx_queue, skb);
508 if (!skb_queue_empty(&local->rx_queue)) {
509 spin_lock_irq(&local->rx_queue.lock);
510 skb_queue_splice_tail_init(&local->rx_queue, &rx_queue);
511 spin_unlock_irq(&local->rx_queue.lock);
517 if (!skb_queue_empty(&local->rx_queue) ||
518 !list_empty(&local->call_attend_q) ||
519 !list_empty(&local->conn_attend_q) ||
520 !list_empty(&local->new_client_calls) ||
522 &local->client_conn_flags)) {
531 skb = skb_peek(&local->rx_delay_queue);
555 rxrpc_see_local(local, rxrpc_local_stop);
556 rxrpc_destroy_local(local);
557 local->io_thread = NULL;
558 rxrpc_see_local(local, rxrpc_local_stopped);