summaryrefslogtreecommitdiffstats
path: root/include/linux/hyperv.h
diff options
context:
space:
mode:
authorK. Y. Srinivasan2012-05-12 22:44:58 +0200
committerGreg Kroah-Hartman2012-05-14 17:59:31 +0200
commitc836d0ab70acf7b7bd2b698278e8abae9e6d9978 (patch)
tree5e3c677b2314e6643785133569950d29cbf4dd7f /include/linux/hyperv.h
parentDrivers: hv: Get rid of an unnecessary check in vmbus_prep_negotiate_resp() (diff)
downloadkernel-qcow2-linux-c836d0ab70acf7b7bd2b698278e8abae9e6d9978.tar.gz
kernel-qcow2-linux-c836d0ab70acf7b7bd2b698278e8abae9e6d9978.tar.xz
kernel-qcow2-linux-c836d0ab70acf7b7bd2b698278e8abae9e6d9978.zip
Drivers: hv: util: Properly handle version negotiations.
The current version negotiation code is not "future proof". Fix this by allowing each service the flexibility to either specify the highest version it can support or it can support the highest version number the host is offering. Signed-off-by: K. Y. Srinivasan <kys@microsoft.com> Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/hyperv.h')
-rw-r--r--include/linux/hyperv.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/linux/hyperv.h b/include/linux/hyperv.h
index 5852545e6bba..22172bd43745 100644
--- a/include/linux/hyperv.h
+++ b/include/linux/hyperv.h
@@ -1035,8 +1035,10 @@ struct hyperv_service_callback {
void (*callback) (void *context);
};
+#define MAX_SRV_VER 0x7ffffff
extern void vmbus_prep_negotiate_resp(struct icmsg_hdr *,
- struct icmsg_negotiate *, u8 *);
+ struct icmsg_negotiate *, u8 *, int,
+ int);
int hv_kvp_init(struct hv_util_service *);
void hv_kvp_deinit(void);