summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRoman Kagan2018-06-09 16:53:31 +0200
committerMichael Brown2018-07-08 01:45:47 +0200
commit40956545e25103fcc4c22e496e4d1d842e2aac53 (patch)
treeefb2c7f90069fd6b9aece9983b0724ef1548c0ab /src
parent[rndis] Register netdev with MAC filled (diff)
downloadipxe-40956545e25103fcc4c22e496e4d1d842e2aac53.tar.gz
ipxe-40956545e25103fcc4c22e496e4d1d842e2aac53.tar.xz
ipxe-40956545e25103fcc4c22e496e4d1d842e2aac53.zip
[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 <rkagan@virtuozzo.com> Modified-by: Michael Brown <mcb30@ipxe.org> Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src')
-rw-r--r--src/interface/hyperv/vmbus.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/src/interface/hyperv/vmbus.c b/src/interface/hyperv/vmbus.c
index 45a7caec..e50fe995 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;
}