Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12-SP3:GA
libvirt.4037
c89a6e78-libxl-physinfo-cleanup.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File c89a6e78-libxl-physinfo-cleanup.patch of Package libvirt.4037
commit c89a6e7878e630718cce0af940e9c070c132ce30 Author: Jim Fehlig <jfehlig@suse.com> Date: Tue Jan 31 20:07:30 2017 -0700 libxl: use init and dispose functions with libxl_physinfo The typical pattern when calling libxl functions that populate a structure is libxl_foo foo; libxl_foo_init(&foo); libxl_get_foo(ctx, &foo); ... libxl_foo_dispose(&foo); Fix several instances of libxl_physinfo missing the init and dispose calls. Signed-off-by: Jim Fehlig <jfehlig@suse.com> Index: libvirt-2.0.0/src/libxl/libxl_capabilities.c =================================================================== --- libvirt-2.0.0.orig/src/libxl/libxl_capabilities.c +++ libvirt-2.0.0/src/libxl/libxl_capabilities.c @@ -63,11 +63,13 @@ libxlCapsInitHost(libxl_ctx *ctx, virCap { libxl_physinfo phy_info; int host_pae; + int ret = -1; + libxl_physinfo_init(&phy_info); if (libxl_get_physinfo(ctx, &phy_info) != 0) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("Failed to get node physical info from libxenlight")); - return -1; + goto cleanup; } /* hw_caps is an array of 32-bit words whose meaning is listed in @@ -78,12 +80,16 @@ libxlCapsInitHost(libxl_ctx *ctx, virCap host_pae = phy_info.hw_cap[0] & LIBXL_X86_FEATURE_PAE_MASK; if (host_pae && virCapabilitiesAddHostFeature(caps, "pae") < 0) - return -1; + goto cleanup; if (virCapabilitiesSetNetPrefix(caps, LIBXL_GENERATED_PREFIX_XEN) < 0) - return -1; + goto cleanup; - return 0; + ret = 0; + + cleanup: + libxl_physinfo_dispose(&phy_info); + return ret; } static int Index: libvirt-2.0.0/src/libxl/libxl_conf.c =================================================================== --- libvirt-2.0.0.orig/src/libxl/libxl_conf.c +++ libvirt-2.0.0/src/libxl/libxl_conf.c @@ -1878,6 +1878,7 @@ libxlDriverNodeGetInfo(libxlDriverPrivat libxlDriverConfigPtr cfg = libxlDriverConfigGet(driver); int ret = -1; + libxl_physinfo_init(&phy_info); if (libxl_get_physinfo(cfg->ctx, &phy_info)) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("libxl_get_physinfo_info failed")); @@ -1902,6 +1903,7 @@ libxlDriverNodeGetInfo(libxlDriverPrivat ret = 0; cleanup: + libxl_physinfo_dispose(&phy_info); virObjectUnref(cfg); return ret; } Index: libvirt-2.0.0/src/libxl/libxl_driver.c =================================================================== --- libvirt-2.0.0.orig/src/libxl/libxl_driver.c +++ libvirt-2.0.0/src/libxl/libxl_driver.c @@ -4188,6 +4188,7 @@ libxlNodeGetFreeMemory(virConnectPtr con libxlDriverConfigPtr cfg = libxlDriverConfigGet(driver); unsigned long long ret = 0; + libxl_physinfo_init(&phy_info); if (virNodeGetFreeMemoryEnsureACL(conn) < 0) goto cleanup; @@ -4200,6 +4201,7 @@ libxlNodeGetFreeMemory(virConnectPtr con ret = phy_info.free_pages * cfg->verInfo->pagesize; cleanup: + libxl_physinfo_dispose(&phy_info); virObjectUnref(cfg); return ret; }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor