From 1e4c45999e8c9f9013f39adb419dd9160e30bccc Mon Sep 17 00:00:00 2001 From: Daniel Veillard Date: Fri, 29 Oct 2010 14:18:29 +0200 Subject: [PATCH] Read the host sysinfo for the QEmu driver Read and store the data when initializing the driver. --- src/qemu/qemu_conf.h | 2 ++ src/qemu/qemu_driver.c | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/src/qemu/qemu_conf.h b/src/qemu/qemu_conf.h index bbe68871c4..13ddbb24e2 100644 --- a/src/qemu/qemu_conf.h +++ b/src/qemu/qemu_conf.h @@ -169,6 +169,8 @@ struct qemud_driver { pciDeviceList *activePciHostdevs; virBitmapPtr reservedVNCPorts; + + virSysinfoDefPtr hostsysinfo; }; typedef struct _qemuDomainPCIAddressSet qemuDomainPCIAddressSet; diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 2a84e5d8ca..e7b37e10fb 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -77,6 +77,7 @@ #include "xml.h" #include "cpu/cpu.h" #include "macvtap.h" +#include "sysinfo.h" #include "domain_nwfilter.h" #include "hooks.h" #include "storage_file.h" @@ -1753,6 +1754,10 @@ qemudStartup(int privileged) { virBitmapAlloc(QEMU_VNC_PORT_MAX - QEMU_VNC_PORT_MIN)) == NULL) goto out_of_memory; + /* read the host sysinfo */ + if (privileged) + qemu_driver->hostsysinfo = virSysinfoRead(); + if (privileged) { if (virAsprintf(&qemu_driver->logDir, "%s/log/libvirt/qemu", LOCAL_STATE_DIR) == -1) @@ -2059,6 +2064,8 @@ qemudShutdown(void) { virDomainObjListDeinit(&qemu_driver->domains); virBitmapFree(qemu_driver->reservedVNCPorts); + virSysinfoDefFree(qemu_driver->hostsysinfo); + VIR_FREE(qemu_driver->securityDriverName); VIR_FREE(qemu_driver->logDir); VIR_FREE(qemu_driver->configDir);