linux/drivers/hv
Dexuan Cui ae20b25430 Drivers: hv: vmbus: enable VMBus protocol version 5.0
With VMBus protocol 5.0, we're able to better support new features, e.g.
running two or more VMBus drivers simultaneously in a single VM -- note:
we can't simply load the current VMBus driver twice, instead, a secondary
VMBus driver must be implemented.

This patch adds the support for the new VMBus protocol, which is available
on new Windows hosts, by:

1) We still use SINT2 for compatibility;
2) We must use Connection ID 4 for the Initiate Contact Message, and for
subsequent messages, we must use the Message Connection ID field in
the host-returned VersionResponse Message.

Notes for developers of the secondary VMBus driver:
1) Must use VMBus protocol 5.0 as well;
2) Must use a different SINT number that is not in use.
3) Must use Connection ID 4 for the Initiate Contact Message, and for
subsequent messages, must use the Message Connection ID field in
the host-returned VersionResponse Message.
4) It's possible that the primary VMBus driver using protocol version 4.0
can work with a secondary VMBus driver using protocol version 5.0, but it's
recommended that both should use 5.0 for new Hyper-V features in the future.

Signed-off-by: Dexuan Cui <decui@microsoft.com>
Cc: Stephen Hemminger <sthemmin@microsoft.com>
Cc: K. Y. Srinivasan <kys@microsoft.com>
Cc: Michael Kelley <mikelley@microsoft.com>
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-05-14 16:06:48 +02:00
..
channel_mgmt.c Drivers: hv: vmbus: do not mark HV_PCIE as perf_device 2018-03-28 13:24:56 +02:00
channel.c
connection.c Drivers: hv: vmbus: enable VMBus protocol version 5.0 2018-05-14 16:06:48 +02:00
hv_balloon.c hv_balloon: trace post_status 2018-03-06 09:57:17 -08:00
hv_fcopy.c
hv_kvp.c
hv_snapshot.c
hv_trace_balloon.h hv_balloon: trace post_status 2018-03-06 09:57:17 -08:00
hv_trace.c hv: add SPDX license to trace 2018-03-28 13:24:56 +02:00
hv_trace.h hv: add SPDX license to trace 2018-03-28 13:24:56 +02:00
hv_util.c
hv_utils_transport.c vfs: do bulk POLL* -> EPOLL* replacement 2018-02-11 14:34:03 -08:00
hv_utils_transport.h
hv.c ARM: 2018-04-09 11:42:31 -07:00
hyperv_vmbus.h Drivers: hv: vmbus: enable VMBus protocol version 5.0 2018-05-14 16:06:48 +02:00
Kconfig hv: add SPDX license id to Kconfig 2018-03-28 13:24:56 +02:00
Makefile hv_balloon: trace post_status 2018-03-06 09:57:17 -08:00
ring_buffer.c Drivers: hv: vmbus: Fix ring buffer signaling 2018-03-06 09:52:59 -08:00
vmbus_drv.c x86/hyper-v: move hyperv.h out of uapi 2018-03-28 22:47:06 +02:00