From: Roman Kagan Date: Sat, 9 Jun 2018 14:53:31 +0000 (+0300) Subject: [vmbus] Do not expect version in version_response X-Git-Tag: v1.20.1~69 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=40956545e25103fcc4c22e496e4d1d842e2aac53;p=thirdparty%2Fipxe.git [vmbus] Do not expect version in version_response The definition of version_response channel message in Linux doesn't include version field, so the upcoming VMBus implementation in QEMU doesn't set it either. Neither Windows nor Linux had any problem with this. The check against this field is redundant because the message is the response to initiate_contact message containing the specific version requested, so the response with version_supported=true is unambiguous. Drop this check and don't rely on the field to be present in the message. Signed-off-by: Roman Kagan Modified-by: Michael Brown Signed-off-by: Michael Brown --- diff --git a/src/interface/hyperv/vmbus.c b/src/interface/hyperv/vmbus.c index 45a7caec4..e50fe9951 100644 --- a/src/interface/hyperv/vmbus.c +++ b/src/interface/hyperv/vmbus.c @@ -195,16 +195,10 @@ static int vmbus_initiate_contact ( struct hv_hypervisor *hv, vmbus ); return -ENOTSUP; } - if ( version->version.raw != cpu_to_le32 ( raw ) ) { - DBGC ( vmbus, "VMBUS %p unexpected version %d.%d\n", - vmbus, le16_to_cpu ( version->version.major ), - le16_to_cpu ( version->version.minor ) ); - return -EPROTO; - } DBGC ( vmbus, "VMBUS %p initiated contact using version %d.%d\n", - vmbus, le16_to_cpu ( version->version.major ), - le16_to_cpu ( version->version.minor ) ); + vmbus, le16_to_cpu ( initiate.version.major ), + le16_to_cpu ( initiate.version.minor ) ); return 0; }