1. 21 1月, 2011 1 次提交
    • W
      qemu: Fix a possible deadlock in p2p migration · bda57661
      Wen Congyang 提交于
      The function virUnrefConnect() may call virReleaseConnect() to release
      the dest connection, and the function virReleaseConnect() will call
      conn->driver->close().
      
      So the function virUnrefConnect() should be surrounded by
      qemuDomainObjEnterRemoteWithDriver() and
      qemuDomainObjExitRemoteWithDriver() to prevent possible deadlock between
      two communicating libvirt daemons.
      
      See commit f0c8e1cb for further details.
      Signed-off-by: NWen Congyang <wency@cn.fujitsu.com>
      bda57661
  2. 20 1月, 2011 3 次提交
  3. 19 1月, 2011 20 次提交
  4. 18 1月, 2011 5 次提交
    • E
      qemu: use -incoming fd:n to avoid qemu holding fd indefinitely · 1859939a
      Eric Blake 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=620363
      
      When using -incoming stdio or -incoming exec:, qemu keeps the
      stdin fd open long after the migration is complete.  Not to
      mention that exec:cat is horribly inefficient, by doubling the
      I/O and going through a popen interface in qemu.
      
      The new -incoming fd: of qemu 0.12.0 closes the fd after using
      it, and allows us to bypass an intermediary cat process for
      less I/O.
      
      * src/qemu/qemu_command.h (qemuBuildCommandLine): Add parameter.
      * src/qemu/qemu_command.c (qemuBuildCommandLine): Support
      migration via fd: when possible.  Consolidate migration handling
      into one spot, now that it is more complex.
      * src/qemu/qemu_driver.c (qemudStartVMDaemon): Update caller.
      * tests/qemuxml2argvtest.c (mymain): Likewise.
      * tests/qemuxml2argvdata/qemuxml2argv-restore-v2-fd.args: New file.
      * tests/qemuxml2argvdata/qemuxml2argv-restore-v2-fd.xml: Likewise.
      1859939a
    • J
      tests: Add tests for per-device boot elements · e182ba87
      Jiri Denemark 提交于
      e182ba87
    • J
      qemu: Support per-device boot ordering · 3d440358
      Jiri Denemark 提交于
      Support for this is included in qemu and seabios from upstream git.
      3d440358
    • J
      Introduce per-device boot element · 94234fa2
      Jiri Denemark 提交于
      Currently, boot order can be specified per device class but there is no
      way to specify exact disk/NIC device to boot from.
      
      This patch adds <boot order='N'/> element which can be used inside
      <disk/> and <interface/>. This is incompatible with the older os/boot
      element. Since not all hypervisors support per-device boot
      specification, new deviceboot flag is included in capabilities XML for
      hypervisors which understand the new boot element. Presence of the flag
      allows (but doesn't require) users to use the new style boot order
      specification.
      94234fa2
    • J
      conf: Move boot parsing into a separate function · f5456ffd
      Jiri Denemark 提交于
      f5456ffd
  5. 17 1月, 2011 3 次提交
  6. 16 1月, 2011 2 次提交
    • M
      tests: Remove obsolete secaatest · ed25dcc2
      Matthias Bolte 提交于
      Before the security driver was refactored in d6623003 seclabeltest and
      secaatest were basically the same. seclabeltest was meant for SELinux
      and secaatest for AppArmor. Both tests exited early when the specific
      security driver backend wasn't enabled.
      
      With the new security manager trying to initialize a disabled security
      driver backend is an error that can't be distinguished from other errors
      anymore. Therefore, the updated seclabeltest just asks for the first
      available backend as this will always work even with SELinux and AppArmor
      backend being disabled due to the new Nop backend.
      
      Remove the obsolete secaatest and compile and run the seclabeltest
      unconditional.
      
      This fixes make check on systems that support AppArmor.
      ed25dcc2
    • M
      virsh: Use WITH_SECDRIVER_APPARMOR to detect AppArmor support · 2095dc39
      Matthias Bolte 提交于
      There is no ENABLE_SECDRIVER_APPARMOR.
      2095dc39
  7. 15 1月, 2011 6 次提交
    • N
      memtune: Let virsh know the unlimited value for memory tunables · d94a14f8
      Nikunj A. Dadhania 提交于
      Display or set unlimited values for memory parameters. Unlimited is
      represented by INT64_MAX in memory cgroup.
      Signed-off-by: NNikunj A. Dadhania <nikunj@linux.vnet.ibm.com>
      Reported-by: NJustin Clift <jclift@redhat.com>
      d94a14f8
    • E
      maint: improve sc_prohibit_strncmp syntax check · 63dbc84a
      Eric Blake 提交于
      * .gnulib: Update, for sc_prohibit_strcmp fix.
      * cfg.mk: Adjust copyright; the only FSF portions come from when
      this file was copied from coreutils.
      (sc_prohibit_strncmp): Copy bug-fixes from sc_prohibit_strcmp.
      * .x-sc_prohibit_strcmp: Delete, now that rule is smarter.
      * .x-sc_prohibit_strncmp: Likewise.
      * Makefile.am (syntax_check_exceptions): Track deletion.
      63dbc84a
    • E
      datatypes: avoid redundant __FUNCTION__ · d9b04947
      Eric Blake 提交于
      virLibConnError already includes __FUNCTION__ in its output, so we
      were redundant.  Furthermore, clang warns that __FUNCTION__ is not
      a string literal (at least __FUNCTION__ will never contain %, so
      it was not a security risk).
      
      * src/datatypes.c: Replace __FUNCTION__ with a descriptive string.
      d9b04947
    • L
      Enable tuning of qemu network tap device "sndbuf" size · fe053dbe
      Laine Stump 提交于
      This is in response to a request in:
      
         https://bugzilla.redhat.com/show_bug.cgi?id=665293
      
      In short, under heavy load, it's possible for qemu's networking to
      lock up due to the tap device's default 1MB sndbuf being
      inadequate. adding "sndbuf=0" to the qemu commandline -netdevice
      option will alleviate this problem (sndbuf=0 actually sets it to
      0xffffffff).
      
      Because we must be able to explicitly specify "0" as a value, the
      standard practice of "0 means not specified" won't work here. Instead,
      virDomainNetDef also has a sndbuf_specified, which defaults to 0, but
      is set to 1 if some value was given.
      
      The sndbuf value is put inside a <tune> element of each <interface> in
      the domain. The intent is that further tunable settings will also be
      placed inside this element.
      
           <interface type='network'>
             ...
             <tune>
               <sndbuf>0</sndbuf>
             ...
             </tune>
           </interface>
      fe053dbe
    • L
      Add XML config switch to enable/disable vhost-net support · 175077fd
      Laine Stump 提交于
      This patch is in response to
      
        https://bugzilla.redhat.com/show_bug.cgi?id=643050
      
      The existing libvirt support for the vhost-net backend to the virtio
      network driver happens automatically - if the vhost-net device is
      available, it is always enabled, otherwise the standard userland
      virtio backend is used.
      
      This patch makes it possible to force whether or not vhost-net is used
      with a bit of XML. Adding a <driver> element to the interface XML, eg:
      
           <interface type="network">
             <model type="virtio"/>
             <driver name="vhost"/>
      
      will force use of vhost-net (if it's not available, the domain will
      fail to start). if driver name="qemu", vhost-net will not be used even
      if it is available.
      
      If there is no <driver name='xxx'/> in the config, libvirt will revert
      to the pre-existing automatic behavior - use vhost-net if it's
      available, and userland backend if vhost-net isn't available.
      175077fd
    • M
      Use the new set_password monitor command to set password. · 9d73efdb
      Marc-André Lureau 提交于
      We try to use that command first when setting a VNC/SPICE password. If
      that doesn't work we fallback to the legacy VNC only password
      
      Allow an expiry time to be set, if that doesn't work, throw an error
      if they try to use SPICE.
      
      Change since v1:
      - moved qemuInitGraphicsPasswords to qemu_hotplug, renamed
        to qemuDomainChangeGraphicsPasswords.
      - updated what looks like a typo (that appears to work anyway) in
        initial patch from Daniel:
          - ret = qemuInitGraphicsPasswords(driver, vm,
          -                                 VIR_DOMAIN_GRAPHICS_TYPE_SPICE,
          -                                 &vm->def->graphics[0]->data.vnc.auth,
          -                                 driver->vncPassword);
          + ret = qemuInitGraphicsPasswords(driver, vm,
          +                                 VIR_DOMAIN_GRAPHICS_TYPE_SPICE,
          +                                 &vm->def->graphics[0]->data.spice.auth,
          +                                 driver->spicePassword);
      
      Based on patch by Daniel P. Berrange <berrange@redhat.com>.
      9d73efdb