1. 13 3月, 2014 18 次提交
  2. 12 3月, 2014 11 次提交
    • J
      Load CPU map from builddir when run uninstalled · e562e82f
      Jiri Denemark 提交于
      When libvirtd is run from a build directory without being installed, it
      should not depend on files from a libvirt package installed in the
      system. Not only because there may not be any libvirt installed at all.
      We already do a good job for plugins but cpu_map.xml was still loaded
      from the system.
      
      The Makefile.am change is necessary to make this all work from VPATH
      builds since libvirtd has no idea where to find libvirt sources. It only
      knows the path from which it was started, i.e, a builddir.
      
      https://bugzilla.redhat.com/show_bug.cgi?id=1074327Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
      e562e82f
    • J
      Introduce vircommandpriv.h for functions used by tests · 7b91dc3e
      Ján Tomko 提交于
      So far it's just virCommandSetDryRun.
      7b91dc3e
    • J
      Use size_t for ndevice in pool source definition · 94b57a9d
      Ján Tomko 提交于
      This allows it to be used by the VIR_*_ELEMENT macros.
      
      Also use them for parsing the definiton and remove the redundant
      freeing of 'nodeset' before jumping to the cleanup label.
      94b57a9d
    • J
      Introduce virStoragePoolSourceDeviceClear · 20f0cd4c
      Ján Tomko 提交于
      Open-coding one VIR_FREE in the test suite just doesn't seem right.
      20f0cd4c
    • J
      Change virStorageBackendISCSISession 'probe' arg to bool · cc8bc54b
      Ján Tomko 提交于
      It quacks like a bool.
      cc8bc54b
    • S
      nwfilter: Add missing goto err_exit in error path · 41064fac
      Stefan Berger 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=1071095
      
      Add a missing goto err_exit in the error path where an unsupported
      value is assigned to the CTRL_IP_LEARNING key.
      Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com>
      41064fac
    • D
      Fix sec label setup when attaching to QEMU processes · 06e788e5
      Daniel P. Berrange 提交于
      When attaching to a QEMU process, the def->seclabels array is
      going to be empty. The qemuProcessAttach method must thus
      populate it with data for the security drivers.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      06e788e5
    • E
      qemu: don't munge user input during block commit · 359f4b11
      Eric Blake 提交于
      While investigating https://bugzilla.redhat.com/show_bug.cgi?id=1061827
      I noticed that we pass user input unscathed for block-pull, but
      always pass a canonical absolute name through for block-commit.
      [Note that we probably _ought_ to validate that the user's request
      for block-pull actually matches the backing chain, the way we already
      do for block-commit - but that's a separate issue.  Further note that
      the ability to pass user input through unscathed allows backdoors
      such as specifying a backing image that is a network URI such as
      a gluster disk, instead of forcing things to the local file system;
      which is an area still under active investigation on whether libvirt
      needs to behave differently for network disks.]
      
      Since qemu may write the name that the user passed in as the backing
      file, a user may have a reason to want a relative file name passed
      through to qemu, and always munging things to absolute prevents that.
      
      Put another way, if you have the backing chain:
      
      [A] <- [B(back=./A)] <- [C(back=./B)]
      
      and commit B into A (virsh blockcommit $dom vda --base A --top B),
      the metadata of C will have to be re-written. But should it be
      rewritten as [C(back=./A)] or as [C(back=/path/to/A)]?  Still up in
      the air is whether qemu's decision should be based on whether B
      and/or C had relative paths, or on whether the --base and/or
      --top arguments to the command were relative paths; but if we always
      pass a canonical name, we've prevented the spelling of the command
      arguments from being part of the hueristics that qemu uses.
      
      I also audited the code, and verified that we never call
      qemuMonitorBlockCommit() with a NULL base, either before or after
      the change to qemu_driver.c.
      
      * src/qemu/qemu_driver.c (qemuDomainBlockCommit): Preserve user's
      spelling, since absolute vs. relative matters to qemu.
      * src/qemu/qemu_monitor.h (qemuMonitorBlockCommit): Base is never
      null.
      * src/qemu/qemu_monitor.c (qemuMonitorBlockCommit): Likewise.
      * src/qemu/qemu_monitor_json.h (qemuMonitorJSONBlockCommit):
      Likewise.
      * src/qemu/qemu_monitor_json.c (qemuMonitorJSONBlockCommit):
      Likewise.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      359f4b11
    • E
      iptables: don't log command probe failures · e686ce8a
      Eric Blake 提交于
      Commit b9dd878f caused a regression in iptables interaction by
      logging non-zero status at a higher level than VIR_INFO.  Revert
      that portion of the commit, as well as adding a comment explaining
      why we check the status ourselves.
      
      Reported by Nehal J Wani.
      
      * src/util/viriptables.c (virIpTablesOnceInit): Undo log regression.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      e686ce8a
    • J
      libxl: support sexpr in native to XML conversion · f68246ac
      Jim Fehlig 提交于
      Supporting sexpr in connectDomainXMLFromNative in the libxl driver
      adds flexibility for users importing legacy Xen configuration into
      libvirt.  E.g. this patch allows importing previous xend-managed
      domains from /var/lib/xend/domains/<dom-uuid>/config.sxp into the
      libvirt libxl driver.
      f68246ac
    • J
      storage: Fix bugs in VIR_APPEND_ELEMENT series · ea10cd76
      John Ferlan 提交于
      From commit id 'd53bbfd1'
      
      Found one core and one possible memory leak. Core seen during local
      virt-test/tp_libvirt run for the vol_create_from test. The memory leak
      was seen by inspection during a review of all VIR_APPEND_ELEMENT changes
      
      In storage_backend_disk/virStorageBackendDiskMakeDataVol(), the 'vol'
      needs to be kept around since it's used later, so use the _COPY macro.
      This caused a segv in libvirtd:
      
      Program received signal SIGSEGV, Segmentation fault.
      [Switching to Thread 0x7fffe87c3700 (LWP 6919)]
      virStorageBackendDiskMakeDataVol (vol=0x0, groups=0x7fffc8000d70, pool=0x7fffc8002460) at storage/storage_backend_disk.c:66
      66          if (vol->target.path == NULL) {
      
      In storage_backend_rbd/virStorageBackendRBDRefreshPool() there's a failure
      path where the 'vol' needs to go through virStorageVolDefFree() since it
      wouldn't be appended.
      ea10cd76
  3. 11 3月, 2014 11 次提交