]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
VSOCK: Detach QP check should filter out non matching QPs.
authorJorgen Hansen <jhansen@vmware.com>
Tue, 5 Apr 2016 08:59:32 +0000 (01:59 -0700)
committerChuck Anderson <chuck.anderson@oracle.com>
Fri, 8 Jul 2016 01:16:22 +0000 (18:16 -0700)
The check in vmci_transport_peer_detach_cb should only allow a
detach when the qp handle of the transport matches the one in
the detach message.

Testing: Before this change, a detach from a peer on a different
socket would cause an active stream socket to register a detach.

Reviewed-by: George Zhang <georgezhang@vmware.com>
Signed-off-by: Jorgen Hansen <jhansen@vmware.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 8ab18d71de8b07d2c4d6f984b718418c09ea45c5)
Signed-off-by: Dan Duval <dan.duval@oracle.com>
(cherry picked from commit 3cab04cb1262c0f6119e95a998d8f0ce3b0dd09f)

Orabug: 23718522
Signed-off-by: Manjunath Govindashetty <manjunath.govindashetty@oracle.com>
net/vmw_vsock/vmci_transport.c

index dfaa0117d17ef114c84fceac5cf9cbf3c51c2d30..e9dc394edcef277feb88ab3dfd326d5ecd557dec 100644 (file)
@@ -844,7 +844,7 @@ static void vmci_transport_peer_detach_cb(u32 sub_id,
         * qp_handle.
         */
        if (vmci_handle_is_invalid(e_payload->handle) ||
-           vmci_handle_is_equal(trans->qp_handle, e_payload->handle))
+           !vmci_handle_is_equal(trans->qp_handle, e_payload->handle))
                return;
 
        /* We don't ask for delayed CBs when we subscribe to this event (we
@@ -2156,7 +2156,7 @@ module_exit(vmci_transport_exit);
 
 MODULE_AUTHOR("VMware, Inc.");
 MODULE_DESCRIPTION("VMCI transport for Virtual Sockets");
-MODULE_VERSION("1.0.2.0-k");
+MODULE_VERSION("1.0.3.0-k");
 MODULE_LICENSE("GPL v2");
 MODULE_ALIAS("vmware_vsock");
 MODULE_ALIAS_NETPROTO(PF_VSOCK);