The vsock patches were merged into mainline in v4.8-rc1, replace the patches
based on the email posting with cherry-picks. The patches appear identical so
the only change here is to the annotation of the origin which now references an
upstream commit instead of a message-id.
Add one new upstream patch b226acab2f6a "VSOCK: Use kvfree()"
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
Series is at <1469716595-13591-1-git-send-email-stefanha@redhat.com>.
This corresponds to v7 of the spec, posted in
<1470324277-19300-1-git-send-email-stefanha@redhat.com>
Also add a "cherry-picked from" to the "vsock: make listener child lock
ordering explicit" patch and move it to the head of the series with the other
vsock backports.
Finally backport three new upstream fixes:
3fda5d6e5801 vhost/vsock: fix vhost virtio_vsock_pkt use-after-free
28ad55578b8a virtio-vsock: fix include guard typo
21bc54fc0cdc vhost/vsock: drop space available check for TX vq
These were made on top of the version of the vsock patches which were added to
Linux master in v4.8-rc1. This commit is based on the email posting, will
replace with with proper cherry-pick separately.
Requires corresponding backend changes in Hyperkit
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
From torvalds/linux@4192f672fa which was
part of torvalds/linux@v4.7-rc6. The change is purely to ensure that vsock
is lockdep-clean.
Signed-off-by: David Sheets <dsheets@docker.com>
When we updated from 4.4.10 to 4.4.14 we copied the patches over.
This changeset properly updates the patches so that they apply cleanly.
0039-VSOCK-do-not-disconnect-socket-when-peer-has-shutdow.patch was
removed as it made it into 4.4.14 already.
Compile tested only
For reference the patches were generated from:
https://github.com/rneugeba/linux-stable/tree/v4.4.14-moby
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
Added a patch to reduce verbosity of vmbus for unknown GUIDs.
Thes happen on every Hyper-V socket connection.
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
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>
The Hyper-V socket patch has a bug which was triggered by a race condition when
the client connected and then immediately closed the connection before the
server would call accept(). This caused a kernel crash.
This patch was discussed with Dexuan Cui <decui@microsoft.com>, the original
author of the Hyper-V socket support.
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
This required pulling in the Qualcom IPC patches as those changed
the socket family enumeration.
All other patches should be the same.
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
No practical change, but adds the "cherry-picked from" to aid tracking. This
has also been queued for stable so will eventually show up in a 4.4.x and can
be dropped from here.
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
Upstream commit 598881800825 ("vsock: Fix blocking ops call in
prepare_to_wait") was subsequently reverted in 6f57e56a1527, which said:
The commit reverted with this patch caused us to potentially miss wakeups.
Since the condition is not checked between the prepare_to_wait and the
schedule(), if a wakeup happens after the condition is checked but before
the sleep happens, we will miss it. ( A description of the problem can be
found here: http://www.makelinux.net/ldd3/chp-6-sect-2 ).
The underlying issue has been fixed instead with f7f9b5e7f8ec ("AF_VSOCK:
Shrink the area influenced by prepare_to_wait").
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
These are WIP taken from git@github.com:stefanha/linux.git#vsock
(==4c9d2a6be1c6, using "cherry-pick -x") and correspond to RFC v5 of the
frontend patches posted in
http://thread.gmane.org/gmane.linux.kernel.virtualization/27455
There is no corresponding spec proposal update yet, but this set of patches
correspond (roughly) to addressing the feedback on v4 of the spec proposal
http://thread.gmane.org/gmane.comp.emulators.virtio.devel/1062.
kernel_config.arm modifications copied from x86, not tested.
Added /etc/kernel-patches/ directory to the image to be consumed by the
licensing.
Signed-off-by: Ian Campbell <ian.campbell@docker.com>