1. 14 5月, 2010 1 次提交
    • D
      Add support for NIC hotplug using netdev_add in QEMU · ff45b4c2
      Daniel P. Berrange 提交于
      QEMU is gaining a new monitor command netdev_add for hotplugging
      NICs using the netdev backend code. We already support this on
      the command this, though it is disabled. This adds support for
      hotplug too, also to remain disabled until 0.13 QEMU is released
      
      * src/qemu/qemu_driver.c: Support netdev hotplug for NICs
      * src/qemu/qemu_monitor.c, src/qemu/qemu_monitor.h,
        src/qemu/qemu_monitor_json.c, src/qemu/qemu_monitor_json.h,
        src/qemu/qemu_monitor_text.c, src/qemu/qemu_monitor_text.h: Add
        support for netdev_add and netdev_remove commands
      ff45b4c2
  2. 13 5月, 2010 1 次提交
  3. 12 5月, 2010 4 次提交
    • J
      Fix monitor ref counting when adding event handle · d84bb6d6
      Jiri Denemark 提交于
      When closing a monitor using qemuMonitorClose(), we are aware of
      the possibility the monitor is still being used somewhere:
      
          /* NB: ordinarily one might immediately set mon->watch to -1
           * and mon->fd to -1, but there may be a callback active
           * that is still relying on these fields being valid. So
           * we merely close them, but not clear their values and
           * use this explicit 'closed' flag to track this state */
      
      but since we call virEventAddHandle() on that monitor without increasing
      its ref counter, the monitor is still freed which makes possible users
      of it quite unhappy. The unhappiness can lead to a hang if qemuMonitorIO
      tries to lock mutex which no longer exists.
      d84bb6d6
    • J
      Remove watches before calling REMOTE_PROC_CLOSE · 6ef9d9da
      Jiri Denemark 提交于
      First calling REMOTE_PROC_CLOSE and then removing watches might lead to
      a hang as HANGUP event can be triggered before the watches are actually
      removed but after virConnectPtr is already freed. As a result of that
      remoteDomainEventFired() would try to lock uninitialized mutex, which
      would hang for ever.
      6ef9d9da
    • C
      node_device: udev: Fix PCI product/vendor swappage · 74c7a346
      Cole Robinson 提交于
      Product and vendor values were swapped in the XML, which made virt-manager
      PCI device listing kinda useless.
      74c7a346
    • E
      build: update gnulib · e8a1a730
      Eric Blake 提交于
      * .gnulib: Update to latest.
      * bootstrap.conf (gnulib_modules): Import netdb.
      * src/esx/esx_util.c (AI_ADDRCONFIG): Rely on gnulib.
      * src/remote/remote_driver.c (AI_ADDRCONFIG): Likewise.
      * tools/virsh.c (WEXITSTATUS, O_SYNC): Likewise.
      e8a1a730
  4. 11 5月, 2010 5 次提交
    • D
      Add env variable for debugging gnutls usage · 36a03bd2
      Daniel P. Berrange 提交于
      Allow debugging of GNUTLS interactions by setting
      
        LIBVIRT_GNUTLS_DEBUG=10 LIBVIRT_DEBUG=1 virsh
      
      * src/remote/remote_driver.c: Use LIBVIRT_GNUTLS_DEBUG to
        enable gnutls debugging
      36a03bd2
    • E
      delMacvtap: typo fix · 78a6af1f
      Eric Blake 提交于
      * src/util/macvtap.c (delMacvtap): Fix documentation.
      78a6af1f
    • E
      maint: allow VPATH use of remote_protocol-structs · 3876e010
      Eric Blake 提交于
      * src/Makefile.am (remote_protocol-structs): Ensure file lives in srcdir.
      3876e010
    • E
      maint: avoid spurious output if program not present · 7cdf2663
      Eric Blake 提交于
      Some shells warn about missing programs before redirection;
      the idiomatic way to silence them is to run the program check
      inside a subshell, with the redirections outside the subshell.
      But a subshell is only needed in places where it is reasonable
      to expect the use of such a noisy shell in the first place.
      
      * src/Makefile.am (remote_protocol-structs): Use subshell, for
      FreeBSD 8.0 /bin/sh.
      * cfg.mk (sc_preprocessor_indentation): Avoid subshell, since the
      only users running cfg.mk can be assumed to have decent tools.
      7cdf2663
    • E
      storage_encryption: silence clang warning · 23958aed
      Eric Blake 提交于
      For printf("%*s",foo,bar), clang complains if foo is not int:
      
      warning: field width should have type 'int', but argument has
      type 'unsigned int' [-Wformat]
      
      * src/conf/storage_encryption_conf.c
      (virStorageEncryptionSecretFormat, virStorageEncryptionFormat):
      Use correct type.
      * src/conf/storage_encryption_conf.h (virStorageEncryptionFormat):
      Likewise.
      23958aed
  5. 08 5月, 2010 4 次提交
    • J
      help avoid accidental remote_protocol.x changes · 180d4b2b
      Jim Meyering 提交于
      Now, if you update remote_protocol.x without also updating
      remote_protocol-structs to match, then "make check" will fail.
      * src/Makefile.am (remote_protocol-structs): Extract list of
      structs and member names from remote_protocol.o.
      (check-local): Depend on it.
      * src/remote_protocol-structs: New file.
      180d4b2b
    • M
      Manually revert "Fix pthread related link error for virt-aa-helper" · cc04c4ca
      Matthias Bolte 提交于
      This reverts commit b5b8a6db.
      
      That commit was not necessary. The problem is fixed by commit
      0e9b3a26, but I didn't rebuild
      it properly after pulling in the commit and didn't notice it.
      cc04c4ca
    • E
      build: use LIBADD, not LDFLAGS, for adding libraries · 48445ccf
      Eric Blake 提交于
      Per automake, LDFLAGS is used early in the line, and LIBADD
      (libraries) or LDADD (programs) is used late.  On platforms like
      cygwin, without lazy linking, this order matters.  Therefore, libtool
      commands, -L, and similar should be in LDFLAGS, but -l should be in
      L*ADD.
      
      * src/Makefile.am (*_LDFLAGS): Move libraries...
      (*_LIBADD): ...to their LIBADD counterpart.
      48445ccf
    • E
      maint: whitespace cleanups · e6125e49
      Eric Blake 提交于
      * src/Makefile.am: Fix some space-tab issues.
      e6125e49
  6. 07 5月, 2010 11 次提交
    • M
      Fix pthread related link error for virt-aa-helper · b5b8a6db
      Matthias Bolte 提交于
      Link virt-aa-helper explicitly with pthread. This is at least
      required on Ubuntu 10.04.
      b5b8a6db
    • M
      ea8d236b
    • J
      avoid link error in tests using libvirt_util; due to pthread_sigmask · 0e9b3a26
      Jim Meyering 提交于
      * src/Makefile.am (libvirt_util_la_LDFLAGS): Add $(LIB_PTHREAD),
      required, now that we're using gnulib's pthread module.
      0e9b3a26
    • M
      Remove unused nwfilter field from struct remote_error · 34a7f3f6
      Matthew Booth 提交于
      Change 965466c1 added a new field to struct remote_error, which broke
      the RPC protocol. Fortunately the new field is unused, so this change
      simply removes it again.
      
      * src/remote/remote_protocol.(c|h|x): Remove remote_nwfilter from struct
        remote_error
      34a7f3f6
    • W
      Implement SCSI disk unplugging · 6bc4ea5a
      Wolfgang Mauerer 提交于
      With the introduction of the generic qemu device model, unplugging
      SCSI disks works like a charm, so support it in libvirt.
      
      * src/qemu/qemu_driver.c: Add qemudDomainDetachSCSIDiskDevice() to do the
        unplugging, extend qemudDomainDetachDeviceAdd().
      Signed-off-by: NWolfgang Mauerer <wolfgang.mauerer@siemens.com>
      Signed-off-by: NEric Blake <eblake@redhat.com>
      6bc4ea5a
    • E
      qemu: use better types · 697426e4
      Eric Blake 提交于
      * src/qemu/qemu_driver.c (qemudFindDisk): Mark parameter const.
      (qemudShrinkDisks): Mark parameter unsigned.
      697426e4
    • W
      Refactor disk unplugging · dc1a2fcc
      Wolfgang Mauerer 提交于
      We can reuse some of the code for other purposes.
      Signed-off-by: NWolfgang Mauerer <wolfgang.mauerer@siemens.com>
      dc1a2fcc
    • E
      build: update gnulib · 062a25f0
      Eric Blake 提交于
      81 patches to gnulib, picks up several new syntax checks.
      
      * .gnulib: Update to latest.
      * .x-sc_prohibit_always_true_header_tests: New file.
      * bootstrap.conf (gnulib_modules): Add sched.
      * src/util/processinfo.c (includes): <sched.h> is now guaranteed.
      * src/network/bridge_driver.c (includes): Drop useless
      <strings.h>.
      * src/openvz/openvz_conf.c (includes): Likewise.
      * src/openvz/openvz_driver.c (includes): Likewise.
      * src/phyp/phyp_driver.c (includes): Likewise.
      * src/qemu/qemu_driver.c (includes): Likewise.
      * src/uml/uml_driver.c (includes): Likewise.
      062a25f0
    • E
      build: use gnulib's sys/wait.h · 8acaeb73
      Eric Blake 提交于
      * configure.ac: Drop sys/wait.h check.
      * src/libvirt.c (includes): Use header unconditionally.
      * src/remote/remote_driver.c (includes): Likewise.
      * src/storage/storage_backend.c (includes): Likewise.
      * src/util/ebtables.c (includes): Likewise.
      * src/util/hooks.c (includes): Likewise.
      * src/util/iptables.c (includes): Likewise.
      * src/util/util.c (includes): Likewise.
      8acaeb73
    • E
      build: use gnulib's uname · 5349cf1e
      Eric Blake 提交于
      * bootstrap.conf (gnulib_modules): Add uname.
      * configure.ac: Drop uname and sys/utsname.h checks.
      * src/nodeinfo.c (nodeGetInfo): Use uname unconditionally.
      5349cf1e
    • E
      build: rely on gnulib's pthread module · 9017b9bc
      Eric Blake 提交于
      Gnulib can guarantee that pthread.h exists, but for now, it is a dummy
      header with no support for most pthread_* functions.  Modify our
      use of pthread to use function checks, rather than header checks,
      to determine how much pthread support is present.
      
      * bootstrap.conf (gnulib_modules): Add pthread.
      * configure.ac: Drop all pthread.h checks.  Optimize function
      checks.  Add check for pthread functions.
      * src/Makefile.am (libvirt_lxc_LDADD): Ensure proper link.
      * src/remote/remote_driver.c (remoteIOEventLoop): Depend on
      pthread_sigmask, now that gnulib guarantees pthread.h.
      * src/util/util.c (virFork): Likewise.
      * src/util/threads.c (threads-pthread.c): Depend on
      pthread_mutexattr_init, as a witness of full pthread support.
      * src/util/threads.h (threads-pthread.h): Likewise.
      9017b9bc
  7. 06 5月, 2010 1 次提交
  8. 05 5月, 2010 2 次提交
    • E
      util: fix va_start usage bug · 62ee19c7
      Eric Blake 提交于
      Detected by clang.  POSIX requires that the second argument to
      va_start be the name of the last variable; and in some implementations,
      passing *path instead of path would dereference bogus memory instead
      of pulling arguments off the stack.
      
      * src/util/util.c (virBuildPathInternal): Use correct argument to
      va_start.
      62ee19c7
    • K
      qemu: live migration with non-shared storage for kvm · b0a3f8b6
      Kenneth Nagin 提交于
      Support for live migration between hosts that do not share storage was
      added to qemu-kvm release 0.12.1.
      It supports two flags:
      -b migration without shared storage with full disk copy
      -i migration without shared storage with incremental copy (same base image
      shared between source and destination).
      
      I tested the live migration without shared storage (both flags) for native
      and p2p with and without tunnelling.  I also verified that the fix doesn't
      affect normal migration with shared storage.
      b0a3f8b6
  9. 04 5月, 2010 11 次提交
    • J
      Don't wipe generated iface target in active domains · 362bc09a
      Jiri Denemark 提交于
      Wipe generated interface target only when reading configuration of
      inactive domains.
      362bc09a
    • J
      lxc: Check domain is active/inactive as required by operation · eca81e08
      Jiri Denemark 提交于
      Report VIR_ERR_OPERATION_INVALID when operation which requires running
      domain is called on inactive domain and vice versa.
      eca81e08
    • J
      lxc: Make SetMemory work for active domains only · b94b72b4
      Jiri Denemark 提交于
      b94b72b4
    • J
      lxc: Use virDomainFindByUUID for domain lookup · e1fa3fb0
      Jiri Denemark 提交于
      Consistently use virDomainFindByUUID instead of virDomainFindByID and
      virDomainFindByName and report VIR_ERR_NO_DOMAIN when domain cannot be
      found.
      e1fa3fb0
    • M
      mingw: Fix two undefined symbols · ee234bfd
      Matthias Bolte 提交于
      Add an empty body for virCondWaitUntil and move virPipeReadUntilEOF
      out of the '#ifndef WIN32' block, because it compiles fine with MinGW
      in combination with gnulib.
      ee234bfd
    • E
      build: avoid compiler warning · 7f31e28c
      Eric Blake 提交于
      Necessary on cygwin, where uid_t and gid_t are 4-byte long rather
      than int, causing gcc -Wformat warnings.
      
      * src/util/util.c (virFileOperationNoFork, virDirCreateNoFork)
      (virFileOperation, virDirCreate, virGetUserEnt): Cast uid_t and
      gid_t before passing to printf.
      * .gitignore: Ignore Windows executables.
      7f31e28c
    • S
      nwfilter: skip some interfaces on filter update · 018fd697
      Stefan Berger 提交于
      When a filter is updated, only those interfaces must have their old
      rules cleared that either reference the filter directly or indirectly
      through another filter. Remember between the different steps of the
      instantiation of the filters which interfaces must be skipped. I am
      using a hash map to remember the names of the interfaces and store a
      bogus pointer to ~0 into it that need not be freed.
      018fd697
    • S
      pass info where request stems from to have rules applied · 5c77fddf
      Stefan Berger 提交于
      For the decision on whether to instantiate the rules, the check for a
      pending IP address learn request is not sufficient since then only the
      thread could instantiate the rules. So, a boolean needs to be passed
      when the thread instantiates the filter rules late and the IP address
      learn request is still pending in order to override the check for the
      pending learn request. If the rules are to be updated while the thread
      is active, this will not be done immediately but the thread will do that
      later on.
      5c77fddf
    • E
      build: prefer WIN32 over __MINGW32__ checks · 9f87b631
      Eric Blake 提交于
      WIN32 is always defined when __MINGW32__ is defined, but the
      converse is not true.  WIN32 is more generic, if someone were
      to ever attempt porting to a microsoft compiler.  This does
      not affect Cygwin, which intentionally does not define WIN32.
      
      * src/qemu/qemu_driver.c (qemuDomainGetBlockInfo): Use more
      generic flag macro.
      * src/storage/storage_backend.c
      (virStorageBackendUpdateVolTargetInfoFD)
      (virStorageBackendRunProgRegex): Likewise.
      * tools/console.h (vshRunConsole): Likewise.
      9f87b631
    • R
      cgroup: Fix possible memory leak in virCgroupMakeGroup · c4157e52
      Ryota Ozaki 提交于
      * src/util/cgroup.c: free temporal path string before breaking loop
      c4157e52
    • E
      dnsmasqReload: avoid mingw link failure · b9c4db0d
      Eric Blake 提交于
      * src/util/dnsmasq.c (dnsmasqReload): Mingw lacks kill, but is not
      running a dnsmasq daemon either.
      b9c4db0d