Thread (26 messages) 26 messages, 5 authors, 2019-11-22

Re: [PATCH net-next 5/6] vsock: use local transport when it is loaded

From: Stefan Hajnoczi <hidden>
Date: 2019-11-21 09:46:23
Also in: kvm, lkml

On Tue, Nov 19, 2019 at 12:01:20PM +0100, Stefano Garzarella wrote:
quoted hunk ↗ jump to hunk
@@ -420,9 +436,10 @@ int vsock_assign_transport(struct vsock_sock *vsk, struct vsock_sock *psk)
 		new_transport = transport_dgram;
 		break;
 	case SOCK_STREAM:
-		if (remote_cid <= VMADDR_CID_HOST ||
-		    (transport_g2h &&
-		     remote_cid == transport_g2h->get_local_cid()))
+		if (vsock_use_local_transport(remote_cid))
+			new_transport = transport_local;
+		else if (remote_cid == VMADDR_CID_HOST ||
+			 remote_cid == VMADDR_CID_HYPERVISOR)
 			new_transport = transport_g2h;
 		else
 			new_transport = transport_h2g;
We used to send VMADDR_CID_RESERVED to the host.  Now we send
VMADDR_CID_RESERVED (LOCAL) to the guest when there is no
transport_local loaded?

If this is correct, is there a justification for this change?  It seems
safest to retain existing behavior.

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help