1. 14 4月, 2011 5 次提交
    • D
      Replace REMOTE_DEBUG with VIR_DEBUG in daemon dispatcher · d93ef446
      Daniel P. Berrange 提交于
      The daemon dispatcher code had an obsolete macro
      
        #define REMOTE_DEBUG(fmt, ...) VIR_DEBUG(fmt, __VA_ARGS__)
      
      This can be trivially removed
      
      * daemon/remote.c: s/REMOTE_DEBUG/VIR_DEBUG/
      d93ef446
    • D
      Add missing checks for whether the connection is open in dispatcher · aaa6d7eb
      Daniel P. Berrange 提交于
      Many functions did not check for whether a connection was
      open. Replace the macro which obscures control flow, with
      explicit checks, and ensure all dispatcher code has checks.
      
      * daemon/remote.c: Add connection checks
      aaa6d7eb
    • D
      Standard on error variable name in libvirtd dispatcher · 36b65213
      Daniel P. Berrange 提交于
      Some dispatcher methods have a parameter
      
                  remote_error *err,
      
      Instead of the more normal
      
                  remote_error *rerr,
      
      * daemon/remote.c: s/err/rerr/
      36b65213
    • D
      Remove all whitespace before function brackets in daemon dispatcher · 80050484
      Daniel P. Berrange 提交于
      A lot of code in libvirtd's dispatcher used the style
      
          dom = get_nonnull_domain (conn, args->dom);
      
      Instead of the normal libvirt style
      
          dom = get_nonnull_domain(conn, args->dom);
      
      * daemon/remote.c: Remove all whitelist before function brackets
      80050484
    • E
      PHYP: Adding network interface · 67eecd16
      Eduardo Otubo 提交于
      This is the implementation of the previous patch now using virInterface*
      API. Ended up this patch got much more simpler, smaller and easier to
      review. Here is some details:
      
        * MAC size and interface name are fixed due to specifications on HMC,
          both are created automatically and CAN'T be specified from user. They
          have the following format:
      
           * MAC: 122980003002
           * Interface name: U9124.720.067BE8B-V3-C0
      
        * I did replaced all the |grep|sed following the comments Eric Blake
          did on the last patch.
      
        * According to my last email, It's not possible to create a network
          interface without assigning it to a specific lpar. Then, I am using
          this very minimalistic XML file for testing:
      
           <interface type='ethernet' name='LPAR01'>
           </interface>
      
          In this file I am using "name" as the lpar name which I am going to
          assign the new network interface. I couldn't find a better way to
          refer to it. Comments are welcome.
      
        * Regarding the fact I am sleeping one second waiting for the HMC to
          complete creation of the interface, I don't have means to check
          if the whole process is done. All I do is execute a command, wait
          until is complete (which is not enough in this case) check
          the return and the exit status. The process of actually creating
          a networking interface seems to take a little longer than just the
          return of the ssh control.
      67eecd16
  2. 13 4月, 2011 2 次提交
    • H
      qemu: fix a dead-lock problem · 30c551ab
      Hu Tao 提交于
      In qemuDomainObjBeginJobWithDriver, when virCondWaitUntil timeouts,
      the function tries to call qemuDriverLock with virDomainObj locked,
      this causes the dead-lock problem. This patch fixes this.
      30c551ab
    • J
      util: Fix crash when removing entries during hash iteration · 5c53160a
      Jiri Denemark 提交于
      Commit 9677cd33 made it possible to
      remove current entry when iterating through all hash entries. However,
      it didn't properly handle a special case of removing first entry
      assigned to a given key which contains several entries in its collision
      list.
      5c53160a
  3. 12 4月, 2011 2 次提交
    • M
      Fix possible infinite loop in remote driver · 50e4b919
      Michal Privoznik 提交于
      When we take out completed calls from queue we might end up
      in circular pointer. We don't want pointer to previous item
      point to element taken out.
      50e4b919
    • E
      maint: fix grammar errors · 99fa3080
      Eric Blake 提交于
      Jim Meyering recently improved gnulib to catch various grammar
      errors during 'make syntax-check'.
      
      * .gnulib: Update to latest, for syntax-check improvements.
      * include/libvirt/libvirt.h.in (virConnectAuthCallbackPtr): Use
      cannot rather than two words.
      * src/driver.c: Likewise.
      * src/driver.h (VIR_SECRET_GET_VALUE_INTERNAL_CALL): Likewise.
      * src/remote/remote_driver.c (initialize_gnutls): Likewise.
      * src/util/pci.c (pciBindDeviceToStub): Likewise.
      * src/storage/storage_backend.c (virStorageBackendCreateQemuImg):
      Likewise.
      (virStorageBackendUpdateVolTargetInfoFD): Avoid doubled word.
      * docs/formatdomain.html.in: Likewise.
      * src/qemu/qemu_process.c (qemuProcessStart): Likewise.
      * cfg.mk (exclude_file_name_regexp--sc_prohibit_can_not)
      (exclude_file_name_regexp--sc_prohibit_doubled_word): Exclude
      existing translation problems.
      99fa3080
  4. 11 4月, 2011 1 次提交
  5. 10 4月, 2011 1 次提交
  6. 09 4月, 2011 5 次提交
  7. 08 4月, 2011 13 次提交
    • E
      build: fix mingw build · ece0b3ab
      Eric Blake 提交于
      Commit 02c39a2f introduced a mingw build regression, due to a
      regression in gnulib's areadlink module:
      
      ../../../gnulib/lib/careadlinkat.c: In function 'careadlinkat':
      ../../../gnulib/lib/careadlinkat.c:143:39: error: 'const struct allocator' has no member named 'malloc'
      
      * .gnulib: Update to latest, for careadlinkat fix.
      ece0b3ab
    • E
      docs: tweak virsh restore warning · 5bc22e12
      Eric Blake 提交于
      * tools/virsh.pod: Fix grammar, and clarify wording.
      * src/qemu/qemu_driver.c (qemudDomainObjStart): Drop redundant
      condition.
      5bc22e12
    • W
      do not build libvirt_iohelper when building without libvirtd · 2999bb06
      Wen Congyang 提交于
      The libexec program libvirt_iohelper is only for libvirtd. If we build rpm
      without libvirtd, we will receive the following messages:
      
      Checking for unpackaged file(s): /usr/lib/rpm/check-files /home/wency/rpmbuild/BUILDROOT/libvirt-0.9.0-1.el6.x86_64
      error: Installed (but unpackaged) file(s) found:
         /usr/libexec/libvirt_iohelper
      2999bb06
    • S
      nwfilters: support for TCP flags evaluation · 6ab24feb
      Stefan Berger 提交于
      This patch adds support for the evaluation of TCP flags in nwfilters.
      
      It adds documentation to the web page and extends the tests as well.
      Also, the nwfilter schema is extended.
      
      The following are some example for rules using the tcp flags:
      
      <rule action='accept' direction='in'>
          <tcp state='NONE' flags='SYN/ALL' dsptportstart='80'/>
      </rule>
      <rule action='drop' direction='in'>
          <tcp state='NONE' flags='SYN/ALL'/>
      </rule>
      6ab24feb
    • T
      setmem: add --current option to virsh setmem command · 80427f1d
      Taku Izumi 提交于
      This patch adds the new option (--current) to the "virsh setmem" command.
      When --current option is specified, it affects a "current" domain.
      The word "current" denotes that if a domain is running, it affects
      a running domain only; otherwise it affects a persistent domain.
      Signed-off-by: NTaku Izumi <izumi.taku@jp.fujitsu.com>
      80427f1d
    • T
      setmem: add VIR_DOMAIN_MEM_CURRENT support to qemu · 95298e23
      Taku Izumi 提交于
      This patch adds virDomainSetMemoryFlags(,,VIR_DOMAIN_MEM_CURRENT) support
      code to qemu driver.
      
      Also, change virDomainObjIsActive to return bool, given its usage.
      Signed-off-by: NTaku Izumi <izumi.taku@jp.fujitsu.com>
      95298e23
    • T
      setmem: introduce VIR_DOMAIN_MEM_CURRENT flag · 0f2e50be
      Taku Izumi 提交于
      This patch introduces VIR_DOMAIN_MEM_CURRENT flag and
      modifies virDomainSetMemoryFlags function to support it.
      Signed-off-by: NTaku Izumi <izumi.taku@jp.fujitsu.com>
      0f2e50be
    • J
      build: Install libxenlight log dir · f7e9b448
      Jim Fehlig 提交于
      Add $localstatedir/log/libvirt/libxl when building libxenlight driver
      f7e9b448
    • T
      setmaxmem: remove the code to invoke virDomainSetMemory in cmdSetmaxmem · 74891d94
      Taku Izumi 提交于
      When the new maximum memory size becomes less than the current memory size,
      I think it is not the libvirt client but the each driver that decides the behavior
      (reject the operation or shrink the current memory size).
      Signed-off-by: NTaku Izumi <izumi.taku@jp.fujitsu.com>
      74891d94
    • E
      virsh: fix mingw startup · 8ae5df5d
      Eric Blake 提交于
      * .gnulib: Update to latest, for pipe2.
      * bootstrap.conf (gnulib_modules): Add pipe2.
      * src/util/event_poll.c (virEventPollInit): Use it, to avoid
      problematic virSetCloseExec on mingw.
      8ae5df5d
    • E
      build: fix gitignore sorting · 02c39a2f
      Eric Blake 提交于
      Make it so we don't have to 'git add -f' particular files like
      po/POTFILES.in all the time (tested by fixing one of our
      special-case files as part of the patch).
      
      * .gnulib: Update to latest.
      * bootstrap: Resync from coreutils.
      * .gitignore: Sort whitelist entries correctly, including ignoring
      files rather than directories.
      * m4/virt-compile-warnings.m4: Convert tabs to space.
      02c39a2f
    • L
      docs: add an IPv6 address to network XML examples · f25d064e
      Laine Stump 提交于
      It was just pointed out that, although I added documentation for the
      IPv6 additions to the network XML, I neglected to use those additions
      in the examples. This patch adds an IPv6 address to each of the
      examples except for the "default" network, since that is a faithful
      reproduction of the default network config that's automatically
      installed, which doesn't include any IPv6 address (for good reason -
      because there is no such thing as IPv6 NAT, there is no one IPv6
      address that would work for all installations).
      f25d064e
    • M
      Add domainSet/GetSchedulerParameters to libxl driver · a7a4414b
      Markus Groß 提交于
      Libxenlight currently only supports the credit scheduler.
      Therefore setting or getting a parameter of other
      schedulers raise an error (for now).
      a7a4414b
  8. 07 4月, 2011 11 次提交
    • O
      qemu: Remove the managed state file only if restoring succeeded · a73bbfc8
      Osier Yang 提交于
      1) Both "qemuDomainStartWithFlags" and "qemuAutostartDomain" try to
      restore the domain from managedsave'ed image if it exists (by
      invoking "qemuDomainObjRestore"), but it unlinks the image even
      if restoring fails, which causes data loss. (This problem exists
      for "virsh managedsave dom; virsh start dom").
      
      The fix for is to unlink the managed state file only if restoring
      succeeded.
      
      2) For "virsh save dom; virsh restore dom;", it can cause data
      corruption if one reuse the saved state file for restoring. Add
      doc to tell user about it.
      
      3) In "qemuDomainObjStart", if "managed_save" is NULL, we shouldn't
      fallback to start the domain, skipping it to cleanup as a incidental
      fix. Discovered by Eric.
      a73bbfc8
    • W
      reattach pci devices when qemuPrepareHostdevPCIDevices() failed · a4efb2e3
      Wen Congyang 提交于
      Reattach all pci devices that we detached when qemuPrepareHostdevPCIDevices()
      failed.
      a4efb2e3
    • W
      reattach pci device when pciBindDeviceToStub() failed · 4e8969eb
      Wen Congyang 提交于
      We should bind pci device to original driver when pciBindDeviceToStub() failed.
      If the pci device is not bound to any driver before calling pciBindDeviceToStub(),
      we should only unbind it from pci-stub. If it is bound to pci-stub, we should not
      unbind it from pci-stub.
      4e8969eb
    • W
      rename pciUnBindDeviceFromStub() to pciUnbindDeviceFromStub() and float it up · 9121b193
      Wen Congyang 提交于
      This patch do the following things:
      1. rename the function as 'Unbind' is better than 'UnBind'.
      2. pciUnbindDeviceFromStub() will be used in the function pciBindDeviceToStub() in
         next patch. Float it up, instead of having to have a forward declaration
      9121b193
    • W
      remove devices from driver->activePciHostdevs when qemuPrepareHostdevPCIDevices() failed · 11549859
      Wen Congyang 提交于
      We should not mark pci devices as active when qemuPrepareHostdevPCIDevices()
      failed.
      11549859
    • W
      pci: avoid invalid free, init path to NULL · d5981f1c
      Wen Congyang 提交于
      This bug was introduce by commit 57162db8, and it will cause libvirtd crashed.
      d5981f1c
    • E
      build: avoid compiler warning on cygwin · f6447e8a
      Eric Blake 提交于
      In file included from util/threads.c:31:
      util/threads-pthread.c: In function 'virThreadSelfID':
      util/threads-pthread.c:214: warning: cast from function call of type 'pthread_t' to non-matching type 'int' [-Wbad-function-cast]
      
      * src/util/threads-pthread.c (virThreadSelfID) [!SYS_gettid]:
      Add intermediate cast to silence gcc.
      f6447e8a
    • M
      Add domainIsUpdated to libxl driver · bf7f6251
      Markus Groß 提交于
      bf7f6251
    • J
      Fix build for older gcc · 3df6fd70
      Jim Fehlig 提交于
      With gcc 4.3.4 I'm seeing the following warning failure
      
      cc1: warnings being treated as errors
      cc1: error: -funit-at-a-time is required for inlining of functions
      that are only called once [-Wdisabled-optimization]
      
      Add -funit-at-a-time to WARN_CFLAGS.
      3df6fd70
    • S
      Change locking for udev monitor and callbacks · 28795828
      Serge Hallyn 提交于
      We're seeing bugs apparently resulting from thread unsafety of
      libpciaccess, such as
      https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/726099
      To prevent those, as suggested by danpb on irc, move the
      nodeDeviceLock(driverState) higher into the callers.  In
      particular:
      
        udevDeviceMonitorStartup should hold the lock while calling
        udevEnumerateDevices(), and udevEventHandleCallback should hold it
        over its entire execution.
      
      It's not clear to me whether it is ok to hold the
      nodeDeviceLock while taking the virNodeDeviceObjLock(dev) on a
      device.  If not, then the lock will need to be dropped around
      the calling of udevSetupSystemDev(), and udevAddOneDevice()
      may not actually be safe to call from higher layers with the
      driverstate lock held.
      
      libvirt 0.8.8 with this patch on it seems to work fine for me.
      Assuming it looks ok and I haven't done anything obviously dumb,
      I'll ask the bug submitters to try this patch.
      Signed-off-by: NSerge Hallyn <serge.hallyn@ubuntu.com>
      28795828
    • E
      tests: fix recent test failures · 25b39315
      Eric Blake 提交于
      * tests/qemuxml2argvdata/qemuxml2argv-*.args: Reflect reserved VGA
      port change.
      25b39315