summaryrefslogtreecommitdiffstats
path: root/include/linux/hyperv.h
diff options
context:
space:
mode:
authorK. Y. Srinivasan <kys@microsoft.com>2016-12-22 16:54:00 -0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-01-10 21:46:41 +0100
commitccb61f8a99e6c29df4fb96a65dad4fad740d5be9 (patch)
treed1d27f484e9ea4745007b9cd048b53c99e49fd39 /include/linux/hyperv.h
parent523b94087078f7f5ac10b7d9cd04277927031c39 (diff)
downloadlinux-ccb61f8a99e6c29df4fb96a65dad4fad740d5be9.tar.gz
linux-ccb61f8a99e6c29df4fb96a65dad4fad740d5be9.tar.xz
Drivers: hv: vmbus: Fix a rescind handling bug
The host can rescind a channel that has been offered to the guest and once the channel is rescinded, the host does not respond to any requests on that channel. Deal with the case where the guest may be blocked waiting for a response from the host. Signed-off-by: K. Y. Srinivasan <kys@microsoft.com> Cc: <stable@vger.kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/hyperv.h')
-rw-r--r--include/linux/hyperv.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/hyperv.h b/include/linux/hyperv.h
index 42fe43fb0c80..7ea20bd7cdd1 100644
--- a/include/linux/hyperv.h
+++ b/include/linux/hyperv.h
@@ -627,6 +627,7 @@ struct vmbus_channel_msginfo {
/* Synchronize the request/response if needed */
struct completion waitevent;
+ struct vmbus_channel *waiting_channel;
union {
struct vmbus_channel_version_supported version_supported;
struct vmbus_channel_open_result open_result;