These patches fix a couple bugs, consolidate duplicate code, and
implement several APIs.
Currently, some interactions with Hyper-V systems fail when the system
is not configured for the "en-US" locale. Additionally, some CPU names
also contain the clock frequency, making it too long for
_virNodeInfo.model. The first two patches fix these bugs.
The second two patches clean up the code a little: one moves repeated
operations into new helper functions; the other replaces the generic
"get WMI class list" functions with a macro.
The next four patches implement the following APIs in the Hyper-V
driver:
* virConnectGetCapabilities()
* virConnectGetMaxVcpus()
* virConnectGetVersion()
* virDomainGetAutostart()
Changes since v1:
* all NEWS updates are now in a single commit at the end
* long function calls have been split up into multiple lines
* improved error handling in hypervDomainLookupBy*(): they now throw
VIR_ERR_NO_DOMAIN when appropriate
* unnecessary calls to virReportError() have been removed from
hypervDomainGetInfo() and hypervDomainGetXMLDesc()
* HTML documentation for the unusual Hyper-V versions
* the WMI schema fix has been split into a separate commit
* hypervConnectGetVersion() uses a new hypervParseVersionString() and
directly produces the unsigned long instead of calling
virParseVersionString()
Matt Coleman (10):
hyperv: make Msvm_ComputerSystem WQL queries locale agnostic
hyperv: fix nodeGetInfo failures caused by long CPU names
hyperv: break out common lookups into separate functions
hyperv: replace generic WMI class list helpers with a macro
hyperv: implement connectGetCapabilities
hyperv: implement connectGetMaxVcpus
hyperv: fix Win32_OperatingSystem WMI queries
hyperv: implement connectGetVersion
hyperv: implement domainGetAutostart
news: document new Hyper-V features and bug fixes
NEWS.rst | 10 +
docs/drvhyperv.html.in | 50 ++
src/hyperv/hyperv_driver.c | 751 ++++++++++++++++++--------
src/hyperv/hyperv_private.h | 2 +
src/hyperv/hyperv_wmi.c | 83 +--
src/hyperv/hyperv_wmi.h | 28 +-
src/hyperv/hyperv_wmi_classes.h | 4 +-
src/hyperv/hyperv_wmi_generator.input | 2 +-
8 files changed, 596 insertions(+), 334 deletions(-)
--
2.27.0