vmbus: change to per channel tasklet

Make the event handling tasklet per channel rather than per-cpu.
This allows for better fairness when getting lots of data on the same
cpu.

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>
Tento commit je obsažen v:
Stephen Hemminger
2017-02-11 23:02:20 -07:00
odevzdal Greg Kroah-Hartman
rodič 37cdd991fa
revize 631e63a9f3
7 změnil soubory, kde provedl 64 přidání a 96 odebrání

Zobrazit soubor

@@ -530,7 +530,7 @@ static int vmbus_close_internal(struct vmbus_channel *channel)
int ret;
/*
* process_chn_event(), running in the tasklet, can race
* vmbus_on_event(), running in the tasklet, can race
* with vmbus_close_internal() in the case of SMP guest, e.g., when
* the former is accessing channel->inbound.ring_buffer, the latter
* could be freeing the ring_buffer pages.