Lines Matching refs:rx

38 	struct rxrpc_sock *rx;  in rxrpc_notify_socket_oob()  local
43 rx = rcu_dereference(call->socket); in rxrpc_notify_socket_oob()
44 if (rx) { in rxrpc_notify_socket_oob()
45 sk = &rx->sk; in rxrpc_notify_socket_oob()
46 spin_lock_irq(&rx->recvmsg_lock); in rxrpc_notify_socket_oob()
49 skb->skb_mstamp_ns = rx->oob_id_counter++; in rxrpc_notify_socket_oob()
51 skb_queue_tail(&rx->recvmsg_oobq, skb); in rxrpc_notify_socket_oob()
54 if (rx->app_ops) in rxrpc_notify_socket_oob()
55 rx->app_ops->notify_oob(sk, skb); in rxrpc_notify_socket_oob()
58 spin_unlock_irq(&rx->recvmsg_lock); in rxrpc_notify_socket_oob()
59 if (!rx->app_ops && !sock_flag(sk, SOCK_DEAD)) in rxrpc_notify_socket_oob()
69 static struct sk_buff *rxrpc_find_pending_oob(struct rxrpc_sock *rx, u64 oob_id) in rxrpc_find_pending_oob() argument
74 p = rx->pending_oobq.rb_node; in rxrpc_find_pending_oob()
95 void rxrpc_add_pending_oob(struct rxrpc_sock *rx, struct sk_buff *skb) in rxrpc_add_pending_oob() argument
97 struct rb_node **pp = &rx->pending_oobq.rb_node, *p = NULL; in rxrpc_add_pending_oob()
105 rb_insert_color(&skb->rbnode, &rx->pending_oobq); in rxrpc_add_pending_oob()
173 static int rxrpc_respond_to_oob(struct rxrpc_sock *rx, in rxrpc_respond_to_oob() argument
182 skb = rxrpc_find_pending_oob(rx, p->oob_id); in rxrpc_respond_to_oob()
184 rb_erase(&skb->rbnode, &rx->pending_oobq); in rxrpc_respond_to_oob()
185 release_sock(&rx->sk); in rxrpc_respond_to_oob()
222 int rxrpc_sendmsg_oob(struct rxrpc_sock *rx, struct msghdr *msg, size_t len) in rxrpc_sendmsg_oob() argument
234 return rxrpc_respond_to_oob(rx, &p, msg); in rxrpc_sendmsg_oob()
236 release_sock(&rx->sk); in rxrpc_sendmsg_oob()
248 release_sock(&rx->sk); in rxrpc_sendmsg_oob()
302 struct rxrpc_sock *rx = rxrpc_sk(sock->sk); in rxrpc_kernel_dequeue_oob() local
305 oob = skb_dequeue(&rx->recvmsg_oobq); in rxrpc_kernel_dequeue_oob()