]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commit
vmbus: only reschedule tasklet if time limit exceeded
authorStephen Hemminger <stephen@networkplumber.org>
Sun, 5 Mar 2017 01:27:10 +0000 (18:27 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 17 Mar 2017 06:10:48 +0000 (15:10 +0900)
commitada6eb11137be0baf846e00fca40fc096ba85a28
tree1f90b8b57ba287681d804e426f1b01e9ec2c741f
parentc37235cce31d5e03b73692f31e994964f18e2dc2
vmbus: only reschedule tasklet if time limit exceeded

The change to reschedule tasklet if more data arrives in ring buffer
can cause performance regression if host timing is such that the
next response happens in small window.

Go back to a modified version of the original looping behavior.
If the race occurs in a small time, then loop. But if the tasklet
has been running for a long interval due to flood, then reschedule
the tasklet to allow migration to ksoftirqd.

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/connection.c