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: Stefano Garzarella <sgarzare@redhat.com>
Date: 2019-11-21 10:02:07
Also in: kvm, lkml

On Thu, Nov 21, 2019 at 09:46:14AM +0000, Stefan Hajnoczi wrote:
On Tue, Nov 19, 2019 at 12:01:20PM +0100, Stefano Garzarella wrote:
quoted
@@ -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.
You're right, I'll revert this change in v2.

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