Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Drivers: hv: vmbus: don't send CHANNELMSG_UNLOAD on pre-Win2012R2 hosts

Pre-Win2012R2 hosts don't properly handle CHANNELMSG_UNLOAD and
wait_for_completion() hangs. Avoid sending such request on old hosts.

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Vitaly Kuznetsov and committed by
Greg Kroah-Hartman
4a54243f e26009aa

+4
+4
drivers/hv/channel_mgmt.c
··· 469 469 { 470 470 struct vmbus_channel_message_header hdr; 471 471 472 + /* Pre-Win2012R2 hosts don't support reconnect */ 473 + if (vmbus_proto_version < VERSION_WIN8_1) 474 + return; 475 + 472 476 init_completion(&vmbus_connection.unload_event); 473 477 memset(&hdr, 0, sizeof(struct vmbus_channel_message_header)); 474 478 hdr.msgtype = CHANNELMSG_UNLOAD;