1. 06 12月, 2011 2 次提交
    • E
      spec: fix sanlock dependency · d336dbdb
      Eric Blake 提交于
      * libvirt.spec.in (with_sanlock): On RHEL, don't force sanlock
      on architectures where it isn't available.
      d336dbdb
    • E
      spec: add dmidecode as prereq · e7dfa468
      Eric Blake 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=754909 complains that
      because libvirt didn't require dmidecode, that the logs are noisy
      and virConnectGetSysinfo needlessly fails.  Even 'virt-what' requires
      dmidecode, so it's not that onerous of a dependency.  We may be
      able to drop this in the future when we move to parsing sysfs data,
      but for now, listing the dependency will help matters.
      
      * libvirt.spec.in (Requires): Sort Requires before BuildRequires.
      Add dmidecode.
      e7dfa468
  2. 01 12月, 2011 1 次提交
    • E
      spec: mark directories in /var/run as ghosts · 764574f7
      Eric Blake 提交于
      We have several directories that are created on the fly, and which
      only contain state relevant to a running libvirtd process (all
      located in /var/run).  Since the directories are created as needed,
      and make no sense without a running libvirtd, we want them deleted
      if libvirt is uninstalled.  And in F15 and newer, /var/run is on
      tmpfs (forcing us to recreate on the fly); which means that someone
      trying to verify a complete rpm will fail if the directory does not
      currently exist because libvirtd has not been started since boot.
      The solution, then, is to mark the directories as %ghost, so that
      rpm knows that we own them and will clean it up if libvirt is
      uninstalled, but will no longer create the directory for us at
      install, nor complain at verify time if the directory does not exist.
      
      See https://bugzilla.redhat.com/show_bug.cgi?id=656611.
      
      * libvirt.spec.in (%files): Add %ghost to temporary directories
      that we don't install, but want cleaned up on libvirt removal.
      764574f7
  3. 22 11月, 2011 1 次提交
    • S
      Export KVM Host Power Management capabilities · e352b164
      Srivatsa S. Bhat 提交于
      This patch exports KVM Host Power Management capabilities as XML so that
      higher-level systems management software can make use of these features
      available in the host.
      
      The script "pm-is-supported" (from pm-utils package) is run to discover if
      Suspend-to-RAM (S3) or Suspend-to-Disk (S4) is supported by the host.
      If either of them are supported, then a new tag "<power_management>" is
      introduced in the XML under the <host> tag.
      
      However in case the query to check for power management features succeeded,
      but the host does not support any such feature, then the XML will contain
      an empty <power_management/> tag. In the event that the PM query itself
      failed, the XML will not contain any "power_management" tag.
      
      To use this, new APIs could be implemented in libvirt to exploit power
      management features such as S3/S4.
      e352b164
  4. 19 11月, 2011 1 次提交
    • D
      Add support for systemd init service · 4789fb2e
      Daniel P. Berrange 提交于
      This patch adds support for a systemd init service for libvirtd
      and libvirt-guests. The libvirtd.service is *not* written to use
      socket activation, since we want libvirtd to start on boot so it
      can do guest auto-start.
      
      The libvirt-guests.service is pretty lame, just exec'ing the
      original init script for now. Ideally we would factor out the
      functionality, into some shared tool.
      
      Instead of
      
        ./configure --with-init-script=redhat
      
      You can now do
      
        ./configure --with-init-script=systemd
      
      Or better still:
      
        ./configure --with-init-script=systemd+redhat
      
      We can also now support install of the upstart init script
      
      * configure.ac: Add systemd, and systemd+redhat options to
        --with-init-script option
      * daemon/Makefile.am: Install systemd services
      * daemon/libvirtd.sysconf: Add note about unused env variable
        with systemd
      * daemon/libvirtd.service.in: libvirtd systemd service unit
      * libvirt.spec.in: Add scripts to installing systemd services
        and migrating from legacy init scripts
      * tools/Makefile.am: Install systemd services
      * tools/libvirt-guests.init.sh: Rename to tools/libvirt-guests.init.in
      * tools/libvirt-guests.service.in: systemd service unit
      4789fb2e
  5. 10 11月, 2011 2 次提交
  6. 08 11月, 2011 1 次提交
    • D
      Release of libvirt-0.9.7 · ab4823a0
      Daniel Veillard 提交于
      * confiure.ac docs/news.html.in libvirt.spec.in: update for release
      * po/*.po*: update localizations and rebuilt
      ab4823a0
  7. 02 11月, 2011 1 次提交
    • D
      Create /var/lib/libvirt/filesystems for LXC trees · f33b5792
      Daniel P. Berrange 提交于
      We already have a /var/lib/libvirt/images for OS install images.
      We need a separate /var/lib/libvirt/filesystems for OS install
      trees, since SELinux labelling will be different
      
      * libvirt.spec.in: Add /var/lib/libvirt/filesystems
      * src/Makefile.am: Create /var/lib/libvirt/filesystems
      f33b5792
  8. 19 10月, 2011 1 次提交
    • D
      Allow for URI aliases when connecting to libvirt · 777ffbd0
      Daniel P. Berrange 提交于
      This adds support for a libvirt client configuration file
      either /etc/libvirt/libvirt.conf for privileged clients,
      or $HOME/.libvirt/libvirt.conf for unprivileged clients.
      
      It allows one parameter
      
       uri_aliases = [
         "hail=qemu+ssh://root@hail.cloud.example.com/system",
         "sleet=qemu+ssh://root@sleet.cloud.example.com/system",
       ]
      
      Any call to virConnectOpen with a non-NULL URI will first
      attempt to match against the uri_aliases list. An application
      can disable this by using VIR_CONNECT_NO_ALIASES
      
      * docs/uri.html.in: Document URI aliases
      * include/libvirt/libvirt.h.in: Add VIR_CONNECT_NO_ALIASES
      * libvirt.spec.in, mingw32-libvirt.spec.in: Add /etc/libvirt/libvirt.conf
      * src/Makefile.am: Install default config file
      * src/libvirt.c: Add support for URI aliases
      * src/remote/remote_driver.c: Don't try to handle URIs
        with no scheme and which clearly are not paths
      * src/util/conf.c: Don't raise error on virConfFree(NULL)
      * src/xen/xen_driver.c: Don't raise error on URIs
        with no scheme
      777ffbd0
  9. 13 10月, 2011 1 次提交
    • E
      spec: mingw cleanups · df92bab4
      Eric Blake 提交于
      * libvirt.spec.in (%configure): Drop unused %{one} macro.
      * mingw32-libvirt.spec.in (%{rhel}): Compile ESX but not HyperV on
      mingw build for RHEL.
      (%build): Make configure honor spec conditionals.  Reorder to
      match libvirt.spec.
      * autobuild.sh (mingw): Update list to match.
      Suggested by Daniel P. Berrange.
      df92bab4
  10. 12 10月, 2011 2 次提交
    • E
      build: fix 'make rpm' · bbbdc148
      Eric Blake 提交于
      Since commit ddf3bd32, 'make rpm' failed with:
      
      RPM build errors:
          File not found: /home/remote/eblake/rpmbuild/BUILDROOT/libvirt-0.9.6-1.fc14.eblake1318366440.x86_64/usr/share/systemtap/tapset/libvirtd.stp
      
      * libvirt.spec.in (with_dtrace): Match installed .stp files.
      bbbdc148
    • D
      disable xenlight for non-Xen platforms · 099dc93b
      Dan Horák 提交于
      when building libvirt in Fedora/s390x I've found that xenlight needs to
      be explicitly disabled in the spec file. Configure properly sets the
      library as non-existent, but the %files section still wants to package
      the 3 /var/*/libvirt/libxl directories. See also
      https://bugzilla.redhat.com/show_bug.cgi?id=745020
      099dc93b
  11. 06 10月, 2011 1 次提交
    • E
      init: raise default system aio limits · 5298551e
      Eric Blake 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=740899 documents that
      if qemu uses aio=native for its disks, then it consumes 128 aio
      requests per disk.  On a host with multiple guests, this can quickly
      run out of kernel aio requests with the default aio-max-nr of
      65536.  Kernel developers have confirmed that there is no up-front
      cost to raising this limit (a larger limit merely implies that more
      aio requests can be issued in parallel, which in turn will result
      in more kernel memory allocation, only if the system really does use
      that many requests).  Since the system default limit prevents 256
      disks, which is well within libvirt's current scalability, this
      patch installs a file to raise the limit and document it in case a
      system administrator has further cause to tune the limit.  The
      install only works on platforms new enough to source /etc/sysctl.d/*
      alongside /etc/sysctl.conf (F14 and RHEL 6).
      
      * daemon/libvirtd.sysctl: New file.
      * daemon/Makefile.am (EXTRA_DIST): Ship it.
      (install-init, uninstall-init): Install it.
      * libvirt.spec.in (%files): Include it in rpm.
      5298551e
  12. 27 9月, 2011 1 次提交
  13. 22 9月, 2011 1 次提交
  14. 20 9月, 2011 2 次提交
    • D
      Release of libvirt-0.9.5 · a362f1f7
      Daniel Veillard 提交于
      * configure.ac docs/news.html.in libvirt.spec.in: update for the release
      * po/*.po*: fetch updated translations from transifex and rebuilt
      a362f1f7
    • D
      Update to require sanlock 1.8 for license compliance · 19ff0ddf
      Daniel P. Berrange 提交于
      Inexplicably the sanlock code all got placed under the GPLv2-only,
      so libvirt's use of sanlock introduces a license incompatibility.
      The sanlock developers have now rearranged the code such that there
      is a 'sanlock_client.so' which is LGPLv2+ while their daemon remains
      GPLv2-only. To use the new client library we need to call the new
      sanlock_init and sanlock_align APIs instead of sanlock_direct_init
      and sanlock_direct_align. These APIs calls are now routed via the
      sanlock daemon, instead of doing direct I/O calls to disk.
      
      For all this we require sanlock >= 1.8
      
      * configure.ac: Check for sanlock_client.so instead of sanlock.so
        and fix various comments
      * libvirt.spec.in: Mandate sanlock >= 1.8
      * src/Makefile.am: Link to -lsanlock_client
      * src/locking/lock_driver_sanlock.c: Use sanlock_init and
        sanlock_align
      19ff0ddf
  15. 17 9月, 2011 1 次提交
  16. 15 9月, 2011 1 次提交
  17. 14 9月, 2011 1 次提交
  18. 03 9月, 2011 1 次提交
    • E
      snapshot: update rng to support full domain in xml · 2a95a3e9
      Eric Blake 提交于
      This patch will probably cause merge conflicts to those trying
      to do backports.  The end goal is simple - domaincommon.rng
      should be the state of domain.rng pre-patch, with a few lines
      tweaked in the header, while domain.rng post-patch is now just
      a shell that includes domaincommon.rng and sets the <start>.
      
      * docs/schemas/domain.rng: Move guts...
      * docs/schemas/domaincommon.rng: ...to new file.
      * docs/schemas/domainsnapshot.rng: Allow new xml.
      * docs/schemas/Makefile.am (schema_DATA): Distribute new file.
      * tests/domainsnapshotxml2xmlout/full_domain.xml: New test.
      * libvirt.spec.in (%files client): Ship new file.  Sort lines.
      * mingw32-libvirt.spec.in: Likewise.
      2a95a3e9
  19. 02 9月, 2011 1 次提交
  20. 26 8月, 2011 1 次提交
  21. 03 8月, 2011 1 次提交
    • D
      Release of libvirt-0.9.4 · 14c2ca3d
      Daniel Veillard 提交于
      * configure.ac docs/news.html.in libvirt.spec.in: updates for new
        release
      * po/*.po*: pulled translations from the transifex teams and regenerated
        localizations
      14c2ca3d
  22. 26 7月, 2011 1 次提交
  23. 25 7月, 2011 1 次提交
  24. 22 7月, 2011 2 次提交
    • D
      Pre-create /var/lib/libvirt/sanlock directory · c198d916
      Daniel P. Berrange 提交于
      The sanlock plugin for libvirt expects the directory
      /var/lib/libvirt/sanlock to exist. Create this and add
      it to the RPM
      
      * libvirt.spec.in: Add /var/lib/libvirt/sanlock
      * src/Makefile.am: Create /var/lib/libvirt/sanlock
      c198d916
    • L
      conf: put virtPortProfile struct / functions in a common location · a3d95b55
      Laine Stump 提交于
      virtPortProfiles are currently only used in the domain XML, but will
      soon also be used in the network XML. To prepare for that change, this
      patch moves the structure definition into util/network.h and the parse
      and format functions into util/network.c (I decided that this was a
      better choice than macvtap.h/c for something that needed to always be
      available on all platforms).
      a3d95b55
  25. 14 7月, 2011 1 次提交
  26. 11 7月, 2011 1 次提交
  27. 06 7月, 2011 1 次提交
    • L
      xml: create an RNG file for common types and move some definitions there · 0c97dc41
      Laine Stump 提交于
      domain.rng, network.rng, and interface.rng already use a few of the
      same types (or in some cases *should* but don't), and an upcoming code
      change will have them sharing even more. To prepare for that, this
      patch takes those common data type definitions and moves them into
      basictypes.rng.
      
      This may break some rule about the need to RNG files to be autonomous
      or something, but I saw that storageencryption.rng is used in this
      way, so I figured it must not be completely against the law...
      0c97dc41
  28. 04 7月, 2011 1 次提交
    • D
      Release of libvirt-0.9.3 · 7976d96d
      Daniel Veillard 提交于
      * configure.ac docs/news.html.in libvirt.spec.in: update for the
        new release
      * po/*.po*: updated and regenerated localizations
      7976d96d
  29. 29 6月, 2011 3 次提交
    • E
      build: sanlock-devel is not in F15 yet · d710531f
      Eric Blake 提交于
      * libvirt.spec.in (with_sanlock): Only default on in rawhide.
      Reported by Gerhard Stenzel.
      d710531f
    • D
      Support automatic creation of leases for disks in sanlock · 97e4f217
      Daniel P. Berrange 提交于
      The current sanlock plugin requires a central management
      application to manually add <lease> elements to each guest,
      to protect resources that are assigned to it (eg writable
      disks). This makes the sanlock plugin useless for usage
      in more ad hoc deployment environments where there is no
      central authority to associate disks with leases.
      
      This patch adds a mode where the sanlock plugin will
      automatically create leases for each assigned read-write
      disk, using a md5 checksum of the fully qualified disk
      path. This can work pretty well if guests are using
      stable disk paths for block devices eg /dev/disk/by-path/XXXX
      symlinks, or if all hosts have NFS volumes mounted in
      a consistent pattern.
      
      The plugin will create one lockspace for managing disks
      with filename /var/lib/libvirt/sanlock/__LIBVIRT__DISKS__.
      For each VM disks, there will be another file to hold
      a lease /var/lib/libvirt/sanlock/5903e5d25e087e60a20fe4566fab41fd
      Each VM disk lease is usually 1 MB in size. The script
      virt-sanlock-cleanup should be run periodically to remove
      unused lease files from the lockspace directory.
      
      To make use of this capability the admin will need to do
      several tasks:
      
       - Mount an NFS volume (or other shared filesystem)
         on /var/lib/libvirt/sanlock
       - Configure 'host_id' in /etc/libvirt/qemu-sanlock.conf
         with a unique value for each host with the same NFS
         mount
       - Toggle the 'auto_disk_leases' parameter in qemu-sanlock.conf
      
      Technically the first step can be skipped, in which case
      sanlock will only protect against 2 vms on the same host
      using the same disk (or the same VM being started twice
      due to error by libvirt).
      
      * src/locking/libvirt_sanlock.aug,
        src/locking/sanlock.conf,
        src/locking/test_libvirt_sanlock.aug: Add config params
        for configuring auto lease setup
      * libvirt.spec.in: Add virt-sanlock-cleanup program, man
        page
      * tools/virt-sanlock-cleanup.in: Script to purge unused
        disk resource lease files
      97e4f217
    • D
      Support loading a configuration file for sanlock plugin · 58eb4f2c
      Daniel P. Berrange 提交于
      Introduce a configuration file with a single parameter
      'require_lease_for_disks', which is used to decide whether
      it is allowed to start a guest which has read/write disks,
      but without any leases.
      
      * libvirt.spec.in: Add sanlock config file and augeas
        lens
      * src/Makefile.am: Install sanlock config file and
        augeas lens
      * src/locking/libvirt_sanlock.aug: Augeas master lens
      * src/locking/test_libvirt_sanlock.aug: Augeas test file
      * src/locking/sanlock.conf: Example sanlock config
      * src/locking/lock_driver_sanlock.c: Wire up loading
        of configuration file
      58eb4f2c
  30. 27 6月, 2011 1 次提交
  31. 22 6月, 2011 1 次提交
    • E
      build: require newer netcf when it is available · 1486099c
      Eric Blake 提交于
      When building rpms for newer Fedora or RHEL, take advantage of the
      newer netcf packaging to guarantee interface snapshot support.
      
      * libvirt.spec.in (BuildRequires): Bump minimum version on
      platforms that support netcf 0.1.8.
      1486099c
  32. 20 6月, 2011 1 次提交
  33. 10 6月, 2011 1 次提交