4.4-stable review patch.  If anyone has any objections, please let me know.

------------------

From: K. Y. Srinivasan <k...@microsoft.com>

commit 2d0c3b5ad739697a68dc8a444f5b9f4817cf8f8f upstream.

When the handshake with daemon is complete, we should poll the channel since
during the handshake, we will not be processing any messages. This is a
potential bug if the host is waiting for a response from the guest.
I would like to thank Dexuan for pointing this out.

Signed-off-by: K. Y. Srinivasan <k...@microsoft.com>
Signed-off-by: Dexuan Cui <de...@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>
---
 drivers/hv/hv_kvp.c      |    2 +-
 drivers/hv/hv_snapshot.c |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

--- a/drivers/hv/hv_kvp.c
+++ b/drivers/hv/hv_kvp.c
@@ -155,7 +155,7 @@ static int kvp_handle_handshake(struct h
        pr_debug("KVP: userspace daemon ver. %d registered\n",
                 KVP_OP_REGISTER);
        kvp_register(dm_reg_value);
-       kvp_transaction.state = HVUTIL_READY;
+       hv_poll_channel(kvp_transaction.recv_channel, kvp_poll_wrapper);
 
        return 0;
 }
--- a/drivers/hv/hv_snapshot.c
+++ b/drivers/hv/hv_snapshot.c
@@ -114,7 +114,7 @@ static int vss_handle_handshake(struct h
        default:
                return -EINVAL;
        }
-       vss_transaction.state = HVUTIL_READY;
+       hv_poll_channel(vss_transaction.recv_channel, vss_poll_wrapper);
        pr_debug("VSS: userspace daemon ver. %d registered\n", dm_reg_value);
        return 0;
 }


Reply via email to