
2017-04-03 19:00 GMT+02:00 Dawid Zamirski <dzamirski@datto.com>:
basically s/data->/data.common->/
Because the data member of hypervObject is a union, get the data via the "common" member everywhere - existing driver does not require special handling for v1 vs v2 separately. ---
In v3: * solved conflict with recently pushed 5683b21309
src/hyperv/hyperv_driver.c | 76 +++++++++++++++++++++++----------------------- src/hyperv/hyperv_wmi.c | 21 ++++++++----- 2 files changed, 51 insertions(+), 46 deletions(-)
diff --git a/src/hyperv/hyperv_wmi.c b/src/hyperv/hyperv_wmi.c index c2d64ba..cdfb55f 100644 --- a/src/hyperv/hyperv_wmi.c +++ b/src/hyperv/hyperv_wmi.c @@ -439,6 +439,8 @@ hypervInvokeMsvmComputerSystemRequestStateChange(virDomainPtr domain, virBuffer query = VIR_BUFFER_INITIALIZER; Msvm_ConcreteJob *concreteJob = NULL; bool completed = false; + const char *resourceUri = MSVM_COMPUTERSYSTEM_V2_RESOURCE_URI;
Shouldn't this say v1 ...
@@ -447,6 +449,9 @@ hypervInvokeMsvmComputerSystemRequestStateChange(virDomainPtr domain, virAsprintf(&properties, "RequestedState=%d", requestedState) < 0) goto cleanup;
+ if (priv->wmiVersion == HYPERV_WMI_VERSION_V1) + resourceUri = MSVM_COMPUTERSYSTEM_V2_RESOURCE_URI;
... and then you should check here for HYPERV_WMI_VERSION_V2 and change it to v2? No need to send a new patch version to fix this. I already have the patches 4-10 merged and ready to be pushed. I'll just incorporate any necessary change before pushing. -- Matthias Bolte http://photron.blogspot.com