summaryrefslogtreecommitdiff
path: root/include/linux/hyperv.h
diff options
context:
space:
mode:
authorK. Y. Srinivasan <kys@microsoft.com>2015-02-28 22:39:02 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2015-03-02 06:31:47 +0300
commita13e8bbe851a96a0e78c2bd599bc34082fa697cd (patch)
tree3901b34efd778528b85afd85c36cb33829c79949 /include/linux/hyperv.h
parent96c1d0581d00f7abe033350edb021a9d947d8d81 (diff)
downloadlinux-a13e8bbe851a96a0e78c2bd599bc34082fa697cd.tar.xz
Drivers: hv: vmbus: Use a round-robin algorithm for picking the outgoing channel
The current algorithm for picking an outgoing channel was not distributing the load well. Implement a simple round-robin scheme to ensure good distribution of the outgoing traffic. Signed-off-by: K. Y. Srinivasan <kys@microsoft.com> Reviewed-by: Long Li <longli@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/hyperv.h')
-rw-r--r--include/linux/hyperv.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/hyperv.h b/include/linux/hyperv.h
index dd92a854c700..1ca582457076 100644
--- a/include/linux/hyperv.h
+++ b/include/linux/hyperv.h
@@ -761,6 +761,9 @@ struct vmbus_channel {
* link up channels based on their CPU affinity.
*/
struct list_head percpu_list;
+
+ int num_sc;
+ int next_oc;
};
static inline void set_channel_read_state(struct vmbus_channel *c, bool state)