aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/linux/hyperv.h36
1 files changed, 31 insertions, 5 deletions
diff --git a/include/linux/hyperv.h b/include/linux/hyperv.h
index 2b5480126394..bee559ada3bb 100644
--- a/include/linux/hyperv.h
+++ b/include/linux/hyperv.h
@@ -440,9 +440,13 @@ hv_get_ringbuffer_availbytes(struct hv_ring_buffer_info *rbi,
440struct vmbus_channel_offer { 440struct vmbus_channel_offer {
441 uuid_le if_type; 441 uuid_le if_type;
442 uuid_le if_instance; 442 uuid_le if_instance;
443 u64 int_latency; /* in 100ns units */ 443
444 u32 if_revision; 444 /*
445 u32 server_ctx_size; /* in bytes */ 445 * These two fields are not currently used.
446 */
447 u64 reserved1;
448 u64 reserved2;
449
446 u16 chn_flags; 450 u16 chn_flags;
447 u16 mmio_megabytes; /* in bytes * 1024 * 1024 */ 451 u16 mmio_megabytes; /* in bytes * 1024 * 1024 */
448 452
@@ -464,7 +468,11 @@ struct vmbus_channel_offer {
464 unsigned char user_def[MAX_PIPE_USER_DEFINED_BYTES]; 468 unsigned char user_def[MAX_PIPE_USER_DEFINED_BYTES];
465 } pipe; 469 } pipe;
466 } u; 470 } u;
467 u32 padding; 471 /*
472 * The sub_channel_index is defined in win8.
473 */
474 u16 sub_channel_index;
475 u16 reserved3;
468} __packed; 476} __packed;
469 477
470/* Server Flags */ 478/* Server Flags */
@@ -660,7 +668,25 @@ struct vmbus_channel_offer_channel {
660 struct vmbus_channel_offer offer; 668 struct vmbus_channel_offer offer;
661 u32 child_relid; 669 u32 child_relid;
662 u8 monitorid; 670 u8 monitorid;
663 u8 monitor_allocated; 671 /*
672 * win7 and beyond splits this field into a bit field.
673 */
674 u8 monitor_allocated:1;
675 u8 reserved:7;
676 /*
677 * These are new fields added in win7 and later.
678 * Do not access these fields without checking the
679 * negotiated protocol.
680 *
681 * If "is_dedicated_interrupt" is set, we must not set the
682 * associated bit in the channel bitmap while sending the
683 * interrupt to the host.
684 *
685 * connection_id is to be used in signaling the host.
686 */
687 u16 is_dedicated_interrupt:1;
688 u16 reserved1:15;
689 u32 connection_id;
664} __packed; 690} __packed;
665 691
666/* Rescind Offer parameters */ 692/* Rescind Offer parameters */