Lines Matching defs:conn
30 struct rxrpc_connection *conn = NULL;
49 conn = rb_entry(p, struct rxrpc_connection, service_node);
51 if (conn->proto.index_key < k.index_key)
53 else if (conn->proto.index_key > k.index_key)
57 conn = NULL;
62 _leave(" = %d", conn ? conn->debug_id : -1);
63 return conn;
71 struct rxrpc_connection *conn)
74 struct rxrpc_conn_proto k = conn->proto;
94 rb_link_node_rcu(&conn->service_node, parent, pp);
95 rb_insert_color(&conn->service_node, &peer->service_conns);
97 set_bit(RXRPC_CONN_IN_SERVICE_CONNS, &conn->flags);
99 _leave(" = %d [new]", conn->debug_id);
114 _debug("replace conn");
116 &conn->service_node,
129 struct rxrpc_connection *conn = rxrpc_alloc_connection(gfp);
131 if (conn) {
135 conn->state = RXRPC_CONN_SERVICE_PREALLOC;
136 refcount_set(&conn->ref, 2);
137 conn->bundle = rxrpc_get_bundle(&rxrpc_service_dummy_bundle);
141 list_add_tail(&conn->link, &rxnet->service_conns);
142 list_add_tail(&conn->proc_link, &rxnet->conn_proc_list);
145 trace_rxrpc_conn(conn->debug_id, rxrpc_conn_new_service,
146 refcount_read(&conn->ref),
150 return conn;
158 struct rxrpc_connection *conn,
167 conn->proto.epoch = sp->hdr.epoch;
168 conn->proto.cid = sp->hdr.cid & RXRPC_CIDMASK;
169 conn->params.service_id = sp->hdr.serviceId;
170 conn->service_id = sp->hdr.serviceId;
171 conn->security_ix = sp->hdr.securityIndex;
172 conn->out_clientflag = 0;
173 conn->security = sec;
174 conn->server_key = key_get(key);
175 if (conn->security_ix)
176 conn->state = RXRPC_CONN_SERVICE_UNSECURED;
178 conn->state = RXRPC_CONN_SERVICE;
185 conn->service_id == rx->service_upgrade.from)
186 conn->service_id = rx->service_upgrade.to;
189 rxrpc_publish_service_conn(conn->params.peer, conn);
191 _net("CONNECTION new %d {%x}", conn->debug_id, conn->proto.cid);
198 void rxrpc_unpublish_service_conn(struct rxrpc_connection *conn)
200 struct rxrpc_peer *peer = conn->params.peer;
203 if (test_and_clear_bit(RXRPC_CONN_IN_SERVICE_CONNS, &conn->flags))
204 rb_erase(&conn->service_node, &peer->service_conns);