summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorK. Y. Srinivasan <kys@microsoft.com>2014-01-16 05:12:58 +0400
committerJiri Slaby <jslaby@suse.cz>2014-05-15 11:49:12 +0400
commit4b6ea659ce4e37ffab2f6f4aac9582d3af5ec857 (patch)
treea19dd2dd3862391bbb5047e27dabfafc15ab7e68 /drivers
parent1c5c8cebd7ab71c77debc63e74ec51fa3c63f9be (diff)
downloadlinux-4b6ea659ce4e37ffab2f6f4aac9582d3af5ec857.tar.xz
Drivers: hv: vmbus: Specify the target CPU that should receive notification
commit e28bab4828354583bb66ac09021ca69b341a7db4 upstream. During the initial VMBUS connect phase, starting with WS2012 R2, we should specify the VPCU in the guest that should receive the notification. Fix this issue. This fix is required to properly connect to the host in the kexeced kernel. Signed-off-by: K. Y. Srinivasan <kys@microsoft.com> Cc: <stable@vger.kernel.org> [3.9+] Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/hv/connection.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/hv/connection.c b/drivers/hv/connection.c
index 13c23a4789de..d6b1e29b0ad2 100644
--- a/drivers/hv/connection.c
+++ b/drivers/hv/connection.c
@@ -79,6 +79,8 @@ static int vmbus_negotiate_version(struct vmbus_channel_msginfo *msginfo,
msg->monitor_page2 = virt_to_phys(
(void *)((unsigned long)vmbus_connection.monitor_pages +
PAGE_SIZE));
+ if (version == VERSION_WIN8)
+ msg->target_vcpu = hv_context.vp_index[smp_processor_id()];
/*
* Add to list before we send the request since we may