Drivers: hv: vmbus: define the new offer type for Hyper-V socket (hvsock)
authorDexuan Cui <decui@microsoft.com>
Thu, 28 Jan 2016 06:29:38 +0000 (22:29 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 8 Feb 2016 05:34:12 +0000 (21:34 -0800)
A helper function is also added.

Signed-off-by: Dexuan Cui <decui@microsoft.com>
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
include/linux/hyperv.h

index 4af51a3f98d975fbc64ac85aa1b751fe6d6b1500..79c4aa70eff3d95d051eda73cd40d9c0320f69bf 100644 (file)
@@ -235,6 +235,7 @@ struct vmbus_channel_offer {
 #define VMBUS_CHANNEL_LOOPBACK_OFFER                   0x100
 #define VMBUS_CHANNEL_PARENT_OFFER                     0x200
 #define VMBUS_CHANNEL_REQUEST_MONITORED_NOTIFICATION   0x400
+#define VMBUS_CHANNEL_TLNPI_PROVIDER_OFFER             0x2000
 
 struct vmpacket_descriptor {
        u16 type;
@@ -795,6 +796,12 @@ struct vmbus_channel {
        enum hv_signal_policy  signal_policy;
 };
 
+static inline bool is_hvsock_channel(const struct vmbus_channel *c)
+{
+       return !!(c->offermsg.offer.chn_flags &
+                 VMBUS_CHANNEL_TLNPI_PROVIDER_OFFER);
+}
+
 static inline void set_channel_signal_state(struct vmbus_channel *c,
                                            enum hv_signal_policy policy)
 {