浏览代码

Drivers: hv: vmbus: Support per-channel driver state

As we implement Virtual Receive Side Scaling on the networking side
(the VRSS patches are currently under review), it will be useful to have
per-channel state that vmbus drivers can manage. Add support for
managing per-channel state.

Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
K. Y. Srinivasan 11 年之前
父节点
当前提交
8a7206a89f
共有 1 个文件被更改,包括 14 次插入0 次删除
  1. 14 0
      include/linux/hyperv.h

+ 14 - 0
include/linux/hyperv.h

@@ -727,6 +727,10 @@ struct vmbus_channel {
 	 * This will be NULL for the primary channel.
 	 * This will be NULL for the primary channel.
 	 */
 	 */
 	struct vmbus_channel *primary_channel;
 	struct vmbus_channel *primary_channel;
+	/*
+	 * Support per-channel state for use by vmbus drivers.
+	 */
+	void *per_channel_state;
 };
 };
 
 
 static inline void set_channel_read_state(struct vmbus_channel *c, bool state)
 static inline void set_channel_read_state(struct vmbus_channel *c, bool state)
@@ -734,6 +738,16 @@ static inline void set_channel_read_state(struct vmbus_channel *c, bool state)
 	c->batched_reading = state;
 	c->batched_reading = state;
 }
 }
 
 
+static inline void set_per_channel_state(struct vmbus_channel *c, void *s)
+{
+	c->per_channel_state = s;
+}
+
+static inline void *get_per_channel_state(struct vmbus_channel *c)
+{
+	return c->per_channel_state;
+}
+
 void vmbus_onmessage(void *context);
 void vmbus_onmessage(void *context);
 
 
 int vmbus_request_offers(void);
 int vmbus_request_offers(void);