Lines Matching full:transport

134 /* Transport used for host->guest communication */
136 /* Transport used for guest->host communication */
138 /* Transport used for DGRAM communication */
140 /* Transport used for local communication */
337 void vsock_for_each_connected_socket(struct vsock_transport *transport, in vsock_for_each_connected_socket() argument
348 if (vsk->transport != transport) in vsock_for_each_connected_socket()
414 if (!vsk->transport) in vsock_deassign_transport()
417 vsk->transport->destruct(vsk); in vsock_deassign_transport()
418 module_put(vsk->transport->module); in vsock_deassign_transport()
419 vsk->transport = NULL; in vsock_deassign_transport()
422 /* Assign a transport to a socket and call the .init transport callback.
427 * The vsk->remote_addr is used to decide which transport to use:
429 * g2h is not loaded, will use local transport;
431 * includes VMADDR_FLAG_TO_HOST flag value, will use guest->host transport;
432 * - remote CID > VMADDR_CID_HOST will use host->guest transport;
474 if (vsk->transport) { in vsock_assign_transport()
475 if (vsk->transport == new_transport) in vsock_assign_transport()
478 /* transport->release() must be called with sock lock acquired. in vsock_assign_transport()
482 * any transport. in vsock_assign_transport()
484 vsk->transport->release(vsk); in vsock_assign_transport()
488 /* We increase the module refcnt to prevent the transport unloading in vsock_assign_transport()
508 vsk->transport = new_transport; in vsock_assign_transport()
567 if (!vsk->transport) in vsock_send_shutdown()
570 return vsk->transport->shutdown(vsk, mode); in vsock_send_shutdown()
681 return vsk->transport->dgram_bind(vsk, addr); in __vsock_bind_dgram()
809 if (vsk->transport) in __vsock_release()
810 vsk->transport->release(vsk); in __vsock_release()
865 return vsk->transport->stream_has_data(vsk); in vsock_stream_has_data()
874 return vsk->transport->seqpacket_has_data(vsk); in vsock_connectible_has_data()
881 return vsk->transport->stream_has_space(vsk); in vsock_stream_has_space()
1062 const struct vsock_transport *transport; in vsock_poll() local
1066 transport = vsk->transport; in vsock_poll()
1076 if (transport && transport->stream_is_active(vsk) && in vsock_poll()
1080 int ret = transport->notify_poll_in( in vsock_poll()
1101 if (transport && sk->sk_state == TCP_ESTABLISHED) { in vsock_poll()
1104 int ret = transport->notify_poll_out( in vsock_poll()
1142 const struct vsock_transport *transport; in vsock_dgram_sendmsg() local
1154 transport = vsk->transport; in vsock_dgram_sendmsg()
1172 remote_addr->svm_cid = transport->get_local_cid(); in vsock_dgram_sendmsg()
1182 remote_addr->svm_cid = transport->get_local_cid(); in vsock_dgram_sendmsg()
1196 if (!transport->dgram_allow(remote_addr->svm_cid, in vsock_dgram_sendmsg()
1202 err = transport->dgram_enqueue(vsk, remote_addr, msg, len); in vsock_dgram_sendmsg()
1237 if (!vsk->transport->dgram_allow(remote_addr->svm_cid, in vsock_dgram_connect()
1256 return vsk->transport->dgram_dequeue(vsk, msg, len, flags); in vsock_dgram_recvmsg()
1280 const struct vsock_transport *transport = vsk->transport; in vsock_transport_cancel_pkt() local
1282 if (!transport || !transport->cancel_pkt) in vsock_transport_cancel_pkt()
1285 return transport->cancel_pkt(vsk); in vsock_transport_cancel_pkt()
1316 const struct vsock_transport *transport; in vsock_connect() local
1361 transport = vsk->transport; in vsock_connect()
1366 if (!transport || in vsock_connect()
1367 !transport->stream_allow(remote_addr->svm_cid, in vsock_connect()
1379 err = transport->connect(vsk); in vsock_connect()
1576 const struct vsock_transport *transport, in vsock_update_buffer_size() argument
1586 transport && transport->notify_buffer_size) in vsock_update_buffer_size()
1587 transport->notify_buffer_size(vsk, &val); in vsock_update_buffer_size()
1601 const struct vsock_transport *transport; in vsock_connectible_setsockopt() local
1625 transport = vsk->transport; in vsock_connectible_setsockopt()
1630 vsock_update_buffer_size(vsk, transport, val); in vsock_connectible_setsockopt()
1636 vsock_update_buffer_size(vsk, transport, vsk->buffer_size); in vsock_connectible_setsockopt()
1642 vsock_update_buffer_size(vsk, transport, vsk->buffer_size); in vsock_connectible_setsockopt()
1746 const struct vsock_transport *transport; in vsock_connectible_sendmsg() local
1763 transport = vsk->transport; in vsock_connectible_sendmsg()
1780 if (!transport || sk->sk_state != TCP_ESTABLISHED || in vsock_connectible_sendmsg()
1794 err = transport->notify_send_init(vsk, &send_data); in vsock_connectible_sendmsg()
1814 err = transport->notify_send_pre_block(vsk, &send_data); in vsock_connectible_sendmsg()
1848 err = transport->notify_send_pre_enqueue(vsk, &send_data); in vsock_connectible_sendmsg()
1859 written = transport->seqpacket_enqueue(vsk, in vsock_connectible_sendmsg()
1862 written = transport->stream_enqueue(vsk, in vsock_connectible_sendmsg()
1872 err = transport->notify_send_post_enqueue( in vsock_connectible_sendmsg()
1899 const struct vsock_transport *transport; in vsock_connectible_wait_data() local
1906 transport = vsk->transport; in vsock_connectible_wait_data()
1927 err = transport->notify_recv_pre_block(vsk, target, recv_data); in vsock_connectible_wait_data()
1950 /* Internal transport error when checking for available in vsock_connectible_wait_data()
1964 const struct vsock_transport *transport; in __vsock_stream_recvmsg() local
1974 transport = vsk->transport; in __vsock_stream_recvmsg()
1983 if (target >= transport->stream_rcvhiwat(vsk)) { in __vsock_stream_recvmsg()
1990 err = transport->notify_recv_init(vsk, target, &recv_data); in __vsock_stream_recvmsg()
2003 err = transport->notify_recv_pre_dequeue(vsk, target, in __vsock_stream_recvmsg()
2008 read = transport->stream_dequeue(vsk, msg, len - copied, flags); in __vsock_stream_recvmsg()
2016 err = transport->notify_recv_post_dequeue(vsk, target, read, in __vsock_stream_recvmsg()
2042 const struct vsock_transport *transport; in __vsock_seqpacket_recvmsg() local
2050 transport = vsk->transport; in __vsock_seqpacket_recvmsg()
2058 msg_len = transport->seqpacket_dequeue(vsk, msg, flags); in __vsock_seqpacket_recvmsg()
2095 const struct vsock_transport *transport; in vsock_connectible_recvmsg() local
2104 transport = vsk->transport; in vsock_connectible_recvmsg()
2106 if (!transport || sk->sk_state != TCP_ESTABLISHED) { in vsock_connectible_recvmsg()
2154 const struct vsock_transport *transport; in vsock_set_rcvlowat() local
2162 transport = vsk->transport; in vsock_set_rcvlowat()
2164 if (transport && transport->set_rcvlowat) in vsock_set_rcvlowat()
2165 return transport->set_rcvlowat(vsk, val); in vsock_set_rcvlowat()
2370 return vsk->transport; in vsock_core_get_transport()