Files
linuxkit/alpine/kernel/patches/0009-VSOCK-Only-allow-host-network-namespace-to-use-AF_VS.patch
Rolf Neugebauer 61b38236a9 kernel: cherry-pick more VMBus patches, fix for yet another kernel crash
These are most of the changes to channel.c and channel_mgmt.c from upstream.

They are needed to apply a proposed patch to fix yet another kernel crash
we reported. This patch is also included.

With these patches applied many thousand connections with random data and up
to 10 concurrent connections are sustained without kernel crashes.

This patch also updates the core Hyper-V socket support to v11 (which
also obsoletes the previous patch added to work around a kernel bug)

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2016-05-17 11:06:07 +01:00

32 lines
918 B
Diff

From 81b78a051aa8c61743abcc266eb9c7511dd19a62 Mon Sep 17 00:00:00 2001
From: Ian Campbell <ian.campbell@docker.com>
Date: Mon, 4 Apr 2016 14:50:10 +0100
Subject: [PATCH 09/40] VSOCK: Only allow host network namespace to use
AF_VSOCK.
The VSOCK addressing schema does not really lend itself to simply creating an
alternative end point address within a namespace.
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
---
net/vmw_vsock/af_vsock.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/net/vmw_vsock/af_vsock.c b/net/vmw_vsock/af_vsock.c
index 112fa8b..ead5127 100644
--- a/net/vmw_vsock/af_vsock.c
+++ b/net/vmw_vsock/af_vsock.c
@@ -1859,6 +1859,9 @@ static const struct proto_ops vsock_stream_ops = {
static int vsock_create(struct net *net, struct socket *sock,
int protocol, int kern)
{
+ if (!net_eq(net, &init_net))
+ return -EAFNOSUPPORT;
+
if (!sock)
return -EINVAL;
--
2.8.2