1. 11 1月, 2013 2 次提交
    • Y
      build: require avahi instead of avahi-libs on rhel5. · 8a883b0c
      Yufang Zhang 提交于
      On rhel5, libs of avahi are packaged into avahi instead of avahi-libs.
      Actually, there is no avahi-libs package shipped with rhel5. This patch
      fixes this by requiring avahi on rhel5.
      8a883b0c
    • E
      spec: remove redundant %if · 86007cba
      Eric Blake 提交于
      The daemon-driver-{qemu,lxc} packages are only built if
      %{with_driver_modules} is specified, so they do not need to
      further test this condition.  Likewise, the daemon package
      is only built if %{with_libvirtd} is specified, so it does
      not need to further test this condition.
      
      * libvirt.spec.in (daemon-driver-qemu, daemon-driver-lxc):
      Unconditionally require libvirt-daemon-driver-network.
      (daemon): Unconditionally include lock-driver files.
      86007cba
  2. 10 1月, 2013 1 次提交
    • Y
      build: move file deleting action from %files list to %install · daef7c9e
      Yufang Zhang 提交于
      When building libvirt rpms on rhel5, I got the following error:
      
          File must begin with "/": rm
          File must begin with "/": -f
          File must begin with "/": $RPM_BUILD_ROOT/etc/sysctl.d/libvirtd
          Installed (but unpackaged) file(s) found:
         /etc/sysctl.d/libvirtd
      
      It is triggerd by the %files list of libvirt daemon:
      
          %if 0%{?fedora} >= 14 || 0%{?rhel} >= 6
          %config(noreplace) %{_prefix}/lib/sysctl.d/libvirtd.conf
          %else
          rm -f $RPM_BUILD_ROOT%{_prefix}/lib/sysctl.d/libvirtd.conf
          %endif
      
      After checking document of rpm spec file, I think it would be better
      to move the file deleting line from %files list to %install script.
      
      Bug introduced in commit a1fd56cb.
      daef7c9e
  3. 09 1月, 2013 1 次提交
  4. 07 1月, 2013 1 次提交
    • E
      build: install libvirt sysctl file correctly · a1fd56cb
      Eric Blake 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=887017 reports that
      even though libvirt attempts to set fs.aio-max-nr via sysctl,
      the file was installed with the wrong name and gets ignored by
      sysctl.  Furthermore, 'man systcl.d' recommends that packages
      install into hard-coded /usr/lib/sysctl.d (even when libdir is
      /usr/lib64), so that sysadmins can use /etc/sysctl.d for overrides.
      
      * daemon/Makefile.am (install-sysctl, uninstall-sysctl): Use
      correct location.
      * libvirt.spec.in (network_files): Reflect this.
      a1fd56cb
  5. 19 12月, 2012 1 次提交
    • J
      spec: Do not install *.py[co] in python examples · 5cce9d28
      Jiri Denemark 提交于
      Unfortunately, rpm is stupid enough to bytycompile python scripts even
      though they are located in /usr/share/doc/libvirt-python-*/examples and
      it does so after %install phase is finished. Thus there's no way we
      could remove those files from BUILDROOT. As a workaround, we may safely
      remove the examples subdirectory completely without losing anything. The
      python scripts that were installed there are also copied directly into
      /usr/share/doc/libvirt-python-*/ by
      
          %doc python/tests/*.py
      
      rule. And yes, the files are actually tests, not examples.
      5cce9d28
  6. 18 12月, 2012 1 次提交
  7. 14 12月, 2012 1 次提交
  8. 13 12月, 2012 3 次提交
    • D
      Add support for re-exec() of virtlockd upon SIGUSR1 · f234dc93
      Daniel P. Berrange 提交于
      The virtlockd daemon maintains file locks on behalf of libvirtd
      and any VMs it is running. These file locks must be held for as
      long as any VM is running. If virtlockd itself ever quits, then
      it is expected that a node would be fenced/rebooted. Thus to
      allow for software upgrads on live systemd, virtlockd needs the
      ability to re-exec() itself.
      
      Upon receipt of SIGUSR1, virtlockd will save its current live
      state out to a file /var/run/virtlockd-restart-exec.json
      It then re-exec()'s itself with exactly the same argv as it
      originally had, and loads the state file, reconstructing any
      objects as appropriate.
      
      The state file contains information about all locks held and
      all network services and clients currently active. An example
      state document is
      
       {
          "server": {
              "min_workers": 1,
              "max_workers": 20,
              "priority_workers": 0,
              "max_clients": 20,
              "keepaliveInterval": 4294967295,
              "keepaliveCount": 0,
              "keepaliveRequired": false,
              "services": [
                  {
                      "auth": 0,
                      "readonly": false,
                      "nrequests_client_max": 1,
                      "socks": [
                          {
                              "fd": 6,
                              "errfd": -1,
                              "pid": 0,
                              "isClient": false
                          }
                      ]
                  }
              ],
              "clients": [
                  {
                      "auth": 0,
                      "readonly": false,
                      "nrequests_max": 1,
                      "sock": {
                          "fd": 9,
                          "errfd": -1,
                          "pid": 0,
                          "isClient": true
                      },
                      "privateData": {
                          "restricted": true,
                          "ownerPid": 1722,
                          "ownerId": 6,
                          "ownerName": "f18x86_64",
                          "ownerUUID": "97586ba9-df27-9459-c806-f016c8bbd224"
                      }
                  },
                  {
                      "auth": 0,
                      "readonly": false,
                      "nrequests_max": 1,
                      "sock": {
                          "fd": 10,
                          "errfd": -1,
                          "pid": 0,
                          "isClient": true
                      },
                      "privateData": {
                          "restricted": true,
                          "ownerPid": 1784,
                          "ownerId": 7,
                          "ownerName": "f16x86_64",
                          "ownerUUID": "7b8e5e42-b875-61e9-b981-91ad8fa46979"
                      }
                  }
              ]
          },
          "defaultLockspace": {
              "resources": [
                  {
                      "name": "/var/lib/libvirt/images/f16x86_64.raw",
                      "path": "/var/lib/libvirt/images/f16x86_64.raw",
                      "fd": 14,
                      "lockHeld": true,
                      "flags": 0,
                      "owners": [
                          1784
                      ]
                  },
                  {
                      "name": "/var/lib/libvirt/images/shared.img",
                      "path": "/var/lib/libvirt/images/shared.img",
                      "fd": 12,
                      "lockHeld": true,
                      "flags": 1,
                      "owners": [
                          1722,
                          1784
                      ]
                  },
                  {
                      "name": "/var/lib/libvirt/images/f18x86_64.img",
                      "path": "/var/lib/libvirt/images/f18x86_64.img",
                      "fd": 11,
                      "lockHeld": true,
                      "flags": 0,
                      "owners": [
                          1722
                      ]
                  }
              ]
          },
          "lockspaces": [
      
          ],
          "magic": "30199"
       }
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      f234dc93
    • D
      Enable systemd socket activation with virtlockd · 74c0353e
      Daniel P. Berrange 提交于
      This enhancement virtlockd so that it can receive a pre-opened
      UNIX domain socket from systemd at launch time, and adds the
      systemd service/socket unit files
      
      * daemon/libvirtd.service.in: Require virtlockd to be running
      * libvirt.spec.in: Add virtlockd systemd files
      * src/Makefile.am: Install systemd files
      * src/locking/lock_daemon.c: Support socket activation
      * src/locking/virtlockd.service.in, src/locking/virtlockd.socket.in:
        systemd unit files
      * src/rpc/virnetserverservice.c, src/rpc/virnetserverservice.h:
        Add virNetServerServiceNewFD() method
      * src/rpc/virnetsocket.c, src/rpc/virnetsocket.h: Add virNetSocketNewListenFD
        method
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      74c0353e
    • D
      Introduce basic infrastructure for virtlockd daemon · c57e3d89
      Daniel P. Berrange 提交于
      The virtlockd daemon will maintain locks on behalf of libvirtd.
      There are two reasons for it to be separate
      
       - Avoid risk of other libvirtd threads accidentally
         releasing fcntl() locks by opening + closing a file
         that is locked
       - Ensure locks can be preserved across libvirtd restarts.
         virtlockd will need to be able to re-exec itself while
         maintaining locks. This is simpler to achieve if its
         sole job is maintaining locks
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      c57e3d89
  9. 12 12月, 2012 1 次提交
  10. 07 12月, 2012 1 次提交
    • J
      Convert libxl driver to Xen 4.2 · dfa1e1dd
      Jim Fehlig 提交于
      Based on a patch originally authored by Daniel De Graaf
      
        http://lists.xen.org/archives/html/xen-devel/2012-05/msg00565.html
      
      This patch converts the Xen libxl driver to support only Xen >= 4.2.
      Support for Xen 4.1 libxl is dropped since that version of libxl is
      designated 'technology preview' only and is incompatible with Xen 4.2
      libxl.  Additionally, the default toolstack in Xen 4.1 is still xend,
      for which libvirt has a stable, functional driver.
      dfa1e1dd
  11. 05 12月, 2012 2 次提交
    • E
      spec: require dbus-daemon when using libvirtd in Fedora · 2edbd3d9
      Eric Blake 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=830201
      
      In older Fedora, the spec file for libivrt depended on avahi, which
      included avahi-daemon, which in turn depended on dbus.  But now that
      avahi libs and avahi-daemon are (correctly) in separate pacakges,
      and since we REALLY don't want a mandatory dependency on avahi-daemon,
      and considering that our init scripts require the messagebus service
      from dbus, we need to explicitly require dbus ourselves.
      
      * libvirt.spec.in (Requires): Add dbus for libvirt-daemon.
      2edbd3d9
    • B
      implement managedsave in libvirt xen legacy driver · 501bfad1
      Bamvor Jian Zhang 提交于
      Implement the domainManagedSave, domainHasManagedSaveImage, and
      domainManagedSaveRemove functions in the libvirt legacy xen driver.
      
      domainHasManagedSaveImage check the managedsave image from filesystem
      everytime. This is different from qemu and libxl driver. In qemu or
      libxl driver, there is a hasManagesSave flag in virDomainObjPtr which
      is not used in xen legacy driver. This flag could not add into xen
      driver ptr either, because the driver ptr will be released at the end of
      every libvirt api call. Meanwhile, AFAIK, xen store all the flags in
      xen not in libvirt xen driver. There is no need to add this flag in xen.
      Signed-off-by: NBamvor Jian Zhang <bjzhang@suse.com>
      501bfad1
  12. 28 11月, 2012 1 次提交
  13. 17 11月, 2012 1 次提交
  14. 06 11月, 2012 2 次提交
  15. 02 11月, 2012 1 次提交
    • D
      Release of libvirt-1.0.0 · 2b435c15
      Daniel Veillard 提交于
      * configure.ac docs/news.html.in libvirt.spec.in: update for the new release
      * po/*.po*: update from transifex, a lot of added support e.g. Indian
        languages, and regenerate
      2b435c15
  16. 01 11月, 2012 1 次提交
  17. 30 10月, 2012 1 次提交
  18. 23 10月, 2012 1 次提交
  19. 18 10月, 2012 1 次提交
    • J
      spec: Fix dependency for lock-sanlock subpackage · 54b8668b
      Jiri Denemark 提交于
      This should not make a big difference in real world since libvirt-daemon,
      which is already required by libvirt-lock-sanlock, requires
      libvirt-client and thus libvirt-lock-sanlock gets this dependency
      transitively. However, since libvirt-lock-sanlock contains
      sanlock_helper binary linked to libvirt.so, we should start requiring
      libvirt-client directly.
      54b8668b
  20. 17 10月, 2012 3 次提交
  21. 13 10月, 2012 1 次提交
    • P
      spec: Add support for libssh2 transport · 1e25c54f
      Peter Krempa 提交于
      Libssh2 transport support was enabled lately but the spec file wasn't
      updated to take this into account. This caused libvirt to be built
      without libssh2 support in Red Hat based OSes.
      1e25c54f
  22. 11 10月, 2012 1 次提交
    • J
      locking: Implement lock failure action in sanlock driver · 89364767
      Jiri Denemark 提交于
      While the changes to sanlock driver should be stable, the actual
      implementation of sanlock_helper is supposed to be replaced in the
      future. However, before we can implement a better sanlock_helper, we
      need an administrative interface to libvirtd so that the helper can just
      pass a "leases lost" event to the particular libvirt driver and
      everything else will be taken care of internally. This approach will
      also allow libvirt to pass such event to applications and use
      appropriate reasons when changing domain states.
      
      The temporary implementation handles all actions directly by calling
      appropriate libvirt APIs (which among other things means that it needs
      to know the credentials required to connect to libvirtd).
      89364767
  23. 05 10月, 2012 1 次提交
    • E
      spec: prefer canonical name of util-linux · a9087ad1
      Eric Blake 提交于
      I noticed that in two places, we require util-linux, and in a third,
      we require util-linux-ng.  On Fedora (I tested F15 through rawhide),
      util-linux-ng is obsoleted by util-linux; on RHEL 6, util-linux
      is obsoleted by util-linux-ng.  That is, on either platform, either
      name will get you the correct package installed (where the preferred
      name on fedora is util-linux, and on RHEL 6 is util-linux-ng).  But
      on RHEL 5, there is no util-linux-ng
      
      * libvirt.spec.in (Requires): Use util-linux, not util-linux-ng.
      a9087ad1
  24. 24 9月, 2012 4 次提交
  25. 19 9月, 2012 1 次提交
    • D
      build: define WITH_INTERFACE for the driver · b95ad92e
      Doug Goldstein 提交于
      Based exclusively on work by Eric Blake in a patch posted with the same
      subject. However some modifications related to comments and my plans to
      add another backend.
      
      Added WITH_INTERFACE as the only automake variable deciding whether to
      build the driver and using WITH_NETCF to identify that we're wanting to
      use the netcf library as the backend.
      
      * configure.ac: Added with_interface
      * src/interface/netcf_driver.c: Renamed..
      * src/interface/interface_backend_netcf.c: ..to this to match storage.
      * src/interface/netcf_driver.h: Renamed..
      * src/interface/interface_driver.h: ..to this.
      * daemon/Makefile.am: Respect WITH_INTERFACE and WITH_NETCF.
      * libvirt.spec.in: Add RPM support for --with-interface
      b95ad92e
  26. 07 9月, 2012 2 次提交
  27. 06 9月, 2012 1 次提交
    • L
      build: require netcf-0.2.2 when installing on Fedora18+ · 89810fc4
      Laine Stump 提交于
      A previous patch forced libnl-3 and netcf-0.2.2 (which itself requires
      libnl-3) when *building* for Fedora 18+ (and RHEL 7+), but the
      install-time Requires: for netcf has always been implicit due to
      libvirtd linking with libnetcf.so. However, the since the API of netcf
      didn't change when it was rebuilt to use libnl-3, the internal library
      version didn't change either, making it possible (from rpm's point of
      view) to upgrade libvirt without upgrading netcf (in reality, that
      leads to a segfault - see
      https://bugzilla.redhat.com/show_bug.cgi?id=853381).
      
      The solution is to put an explicit Requires: line in libvirt's
      specfile for fedora >= 18 and rhel >= 7.
      89810fc4
  28. 05 9月, 2012 1 次提交
    • D
      Remove explicit dependency on ceph RPM · 8386b304
      Daniel P. Berrange 提交于
      The libvirt storage driver uses librbd.so for its functionality.
      RPM will automatically add a dependency on the library, so there
      is no need to have an explicit dependency on the ceph RPM itself.
      This allows newer Fedora distros to avoid pulling in the huge
      ceph RPM, in favour of just having the libraries installed
      8386b304
  29. 31 8月, 2012 1 次提交
    • D
      Release of libvirt-0.10.1 · 383a4165
      Daniel Veillard 提交于
      * configure.ac docs/news.html.in libvirt.spec.in: update for release
      * po/*.po*: pulled localization updates for sp,ja,mr,pa,uk,zh_CN,zh_TW
        and regenerated
      383a4165