vmbus: use rcu for per-cpu channel list
authorStephen Hemminger <stephen@networkplumber.org>
Sun, 5 Mar 2017 01:13:57 +0000 (18:13 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 16 Mar 2017 07:42:00 +0000 (16:42 +0900)
commit8200f2085abe7f29a016381f3122000cc7b2a760
tree63b48dc913ec3f3726ec3eb79cafc56ecdcb2822
parentc6240cacdb2c3cb56a21fb3ea0c105154ab87a2a
vmbus: use rcu for per-cpu channel list

The per-cpu channel list is now referred to in the interrupt
routine. This is mostly safe since the host will not normally generate
an interrupt when channel is being deleted but if it did then there
would be a use after free problem.

To solve, this use RCU protection on ther per-cpu list.

Fixes: 631e63a9f346 ("vmbus: change to per channel tasklet")

Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/hv/channel_mgmt.c
drivers/hv/vmbus_drv.c
include/linux/hyperv.h