]> git.baikalelectronics.ru Git - kernel.git/commit
VSOCK: sock_put wasn't safe to call in interrupt context
authorJorgen Hansen <jhansen@vmware.com>
Wed, 21 Oct 2015 11:53:56 +0000 (04:53 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 22 Oct 2015 14:21:05 +0000 (07:21 -0700)
commitb3d3fb2a101d84a42d8747d8d4ceee92743533e0
tree0301ce5f59efd5311d6d7ae2b736feda283967fa
parentae299a219e5754cc576ecd10832d63bcb68ba09d
VSOCK: sock_put wasn't safe to call in interrupt context

In the vsock vmci_transport driver, sock_put wasn't safe to call
in interrupt context, since that may call the vsock destructor
which in turn calls several functions that should only be called
from process context. This change defers the callling of these
functions  to a worker thread. All these functions were
deallocation of resources related to the transport itself.

Furthermore, an unused callback was removed to simplify the
cleanup.

Multiple customers have been hitting this issue when using
VMware tools on vSphere 2015.

Also added a version to the vmci transport module (starting from
1.0.2.0-k since up until now it appears that this module was
sharing version with vsock that is currently at 1.0.1.0-k).

Reviewed-by: Aditya Asarwade <asarwade@vmware.com>
Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
Signed-off-by: Jorgen Hansen <jhansen@vmware.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/vmw_vsock/vmci_transport.c
net/vmw_vsock/vmci_transport.h