diff options
-rw-r--r-- | include/linux/hyperv.h | 36 |
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, | |||
440 | struct vmbus_channel_offer { | 440 | struct 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 */ |