aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/hv/connection.c5
-rw-r--r--include/linux/hyperv.h4
2 files changed, 7 insertions, 2 deletions
diff --git a/drivers/hv/connection.c b/drivers/hv/connection.c
index f2d7bf90c9fe..2e7801af466e 100644
--- a/drivers/hv/connection.c
+++ b/drivers/hv/connection.c
@@ -55,6 +55,9 @@ static __u32 vmbus_get_next_version(__u32 current_version)
55 case (VERSION_WIN8): 55 case (VERSION_WIN8):
56 return VERSION_WIN7; 56 return VERSION_WIN7;
57 57
58 case (VERSION_WIN8_1):
59 return VERSION_WIN8;
60
58 case (VERSION_WS2008): 61 case (VERSION_WS2008):
59 default: 62 default:
60 return VERSION_INVAL; 63 return VERSION_INVAL;
@@ -77,7 +80,7 @@ static int vmbus_negotiate_version(struct vmbus_channel_msginfo *msginfo,
77 msg->interrupt_page = virt_to_phys(vmbus_connection.int_page); 80 msg->interrupt_page = virt_to_phys(vmbus_connection.int_page);
78 msg->monitor_page1 = virt_to_phys(vmbus_connection.monitor_pages[0]); 81 msg->monitor_page1 = virt_to_phys(vmbus_connection.monitor_pages[0]);
79 msg->monitor_page2 = virt_to_phys(vmbus_connection.monitor_pages[1]); 82 msg->monitor_page2 = virt_to_phys(vmbus_connection.monitor_pages[1]);
80 if (version == VERSION_WIN8) 83 if (version == VERSION_WIN8_1)
81 msg->target_vcpu = hv_context.vp_index[smp_processor_id()]; 84 msg->target_vcpu = hv_context.vp_index[smp_processor_id()];
82 85
83 /* 86 /*
diff --git a/include/linux/hyperv.h b/include/linux/hyperv.h
index ab7359fde987..2d7b4f139c32 100644
--- a/include/linux/hyperv.h
+++ b/include/linux/hyperv.h
@@ -147,15 +147,17 @@ hv_get_ringbuffer_availbytes(struct hv_ring_buffer_info *rbi,
147 * 0 . 13 (Windows Server 2008) 147 * 0 . 13 (Windows Server 2008)
148 * 1 . 1 (Windows 7) 148 * 1 . 1 (Windows 7)
149 * 2 . 4 (Windows 8) 149 * 2 . 4 (Windows 8)
150 * 3 . 0 (Windows 8 R2)
150 */ 151 */
151 152
152#define VERSION_WS2008 ((0 << 16) | (13)) 153#define VERSION_WS2008 ((0 << 16) | (13))
153#define VERSION_WIN7 ((1 << 16) | (1)) 154#define VERSION_WIN7 ((1 << 16) | (1))
154#define VERSION_WIN8 ((2 << 16) | (4)) 155#define VERSION_WIN8 ((2 << 16) | (4))
156#define VERSION_WIN8_1 ((3 << 16) | (0))
155 157
156#define VERSION_INVAL -1 158#define VERSION_INVAL -1
157 159
158#define VERSION_CURRENT VERSION_WIN8 160#define VERSION_CURRENT VERSION_WIN8_1
159 161
160/* Make maximum size of pipe payload of 16K */ 162/* Make maximum size of pipe payload of 16K */
161#define MAX_PIPE_DATA_PAYLOAD (sizeof(u8) * 16384) 163#define MAX_PIPE_DATA_PAYLOAD (sizeof(u8) * 16384)