]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/commit
hv_netvsc: Fix race condition on Multi-Send Data field
authorHaiyang Zhang <haiyangz@microsoft.com>
Thu, 10 Dec 2015 20:19:35 +0000 (12:19 -0800)
committerKamal Mostafa <kamal@canonical.com>
Wed, 13 Jul 2016 15:58:13 +0000 (08:58 -0700)
commit78211f38919148209de86252ed1d88295483c724
treef5ced832d762fc79a3b509cce21950816acc0d7a
parentaa073be085f7c6f7bb06fa9fa249c2beee7d593e
hv_netvsc: Fix race condition on Multi-Send Data field

BugLink: http://bugs.launchpad.net/bugs/1583357
In commit 2a04ae8acb14 ("hv_netvsc: remove locking in netvsc_send()"), the
locking for MSD (Multi-Send Data) field was removed. This could cause a
race condition between RNDIS control messages and data packets processing,
because these two types of traffic are not synchronized.
This patch fixes this issue by sending control messages out directly
without reading MSD field.

Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit cf8190e4c26c8ccf87d80793f8f1f7fe150cdf8c)
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Brad Figg <brad.figg@canonical.com>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
drivers/net/hyperv/netvsc.c