History

hv_utils: Add comment about max VMbus packet size in VSS driver

The VSS driver allocates a VMbus receive buffer significantly larger than sizeof(hv_vss_msg), with no explanation. To help prevent future mistakes, add a #define and comment about why this is done. No functional change.

Michael Kelley committed 4 years ago

Commit 6de74d11 parent 4ee52452 files · +16 −2Browse files

Showing the changes to include/uapi (1 of 2 files). Show all

Unified · Split

include/uapi/linux/hyperv.h+11−0
@@ -90,6 +90,17 @@ struct hv_vss_check_dm_info { · 89 unmodified lines
90 __u32 flags;90 __u32 flags;
91} __attribute__((packed));91} __attribute__((packed));
92 92
93/*
94 * struct hv_vss_msg encodes the fields that the Linux VSS
95 * driver accesses. However, FREEZE messages from Hyper-V contain
96 * additional LUN information that Linux doesn't use and are not
97 * represented in struct hv_vss_msg. A received FREEZE message may
98 * be as large as 6,260 bytes, so the driver must allocate at least
99 * that much space, not sizeof(struct hv_vss_msg). Other messages
100 * such as AUTO_RECOVER may be as large as 12,500 bytes. However,
101 * because the Linux VSS driver responds that it doesn't support
102 * auto-recovery, it should not receive such messages.
103 */
93struct hv_vss_msg {104struct hv_vss_msg {
94 union {105 union {
95 struct hv_vss_hdr vss_hdr;106 struct hv_vss_hdr vss_hdr;