Commit Graph

7 Commits

Author SHA1 Message Date
Ian Campbell
dad42c8dc4 vsudd: Close via the File vsock not the raw fd.
Otherwise the underlying gets closed twice, once by the File's finalizer (which
occurs at whichever point vsock appears no longer used) and another time by the
syscall.Close(), which leads to EBADF. The various syscall.shutdown can also
suffer from this if the File happens to get finalized first, but the reference
in the defer'd function now keeps the File alive until we are truly done with
the socket.

This seems to resolve the random stalls and failures seen in "make test".

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-08 15:08:10 +01:00
Ian Campbell
113ca08cae vsudd: Log as we Close both sockets (via defer)
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-08 15:08:10 +01:00
Ian Campbell
777ddec6b8 vsudd: Bind to VSOCK_CID_ANY rather than "3"
This is equivalent to binding to 0.0.0.0 rather than a specific IP address.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-08 15:08:10 +01:00
Ian Campbell
d82a23a399 vsudd: Log the peer's port number
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-08 15:08:10 +01:00
Ian Campbell
a8e3b55775 vsudd: include fd in vsock File object name (used in logs)
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-08 15:08:10 +01:00
Ian Campbell
dd237901ea vsudd: Enable timestamps on logging
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-05 14:16:19 +01:00
Ian Campbell
eac9d655c6 vsudd: New daemon to proxy vsock to Unix domain sock
Used to proxy vsock 2376 <-> /var/run/docker.sock in the Moby VM.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-05 13:50:06 +01:00