1. 18 5月, 2016 1 次提交
  2. 11 5月, 2016 1 次提交
  3. 18 12月, 2015 1 次提交
  4. 10 3月, 2014 2 次提交
  5. 10 12月, 2013 2 次提交
  6. 07 8月, 2013 1 次提交
    • S
      xen: Use internal interfaces in xenDomainUsedCpus · d7a45bf2
      Stefan Bader 提交于
      Since commit 95e18efd most public interfaces (xenUnified...) obtain
      a virDomainDefPtr via xenGetDomainDefFor...() which take the unified
      lock.
      This is already taken before calling xenDomainUsedCpus(), so we get
      a deadlock for active guests. Avoid this by splitting up
      xenUnifiedDomainGetVcpusFlags() and xenUnifiedDomainGetVcpus() into
      public and private function calls (which get the virDomainDefPtr passed)
      and use those in xenDomainUsedCpus().
      
          xenDomainUsedCpus
            ...
            nb_vcpu = xenUnifiedDomainGetMaxVcpus(dom);
              return xenUnifiedDomainGetVcpusFlags(...)
                ...
                if (!(def = xenGetDomainDefForDom(dom)))
                  return xenGetDomainDefForUUID(dom->conn, dom->uuid);
                    ...
                    ret = xenHypervisorLookupDomainByUUID(conn, uuid);
                      ...
                      xenUnifiedLock(priv);
                      name = xenStoreDomainGetName(conn, id);
                      xenUnifiedUnlock(priv);
            ...
            if ((ncpus = xenUnifiedDomainGetVcpus(dom, cpuinfo, nb_vcpu,
              ...
              if (!(def = xenGetDomainDefForDom(dom)))
                [again like above]
      Signed-off-by: NStefan Bader <stefan.bader@canonical.com>
      d7a45bf2
  7. 21 5月, 2013 1 次提交
  8. 09 5月, 2013 15 次提交
  9. 24 4月, 2013 2 次提交
  10. 05 4月, 2013 2 次提交
    • P
      virCaps: get rid of defaultConsoleTargetType callback · 482e5f15
      Peter Krempa 提交于
      This patch refactors various places to allow removing of the
      defaultConsoleTargetType callback from the virCaps structure.
      
      A new console character device target type is introduced -
      VIR_DOMAIN_CHR_CONSOLE_TARGET_TYPE_NONE - to mark that no type was
      specified in the XML. This type is at the end converted to the standard
      VIR_DOMAIN_CHR_CONSOLE_TARGET_TYPE_SERIAL. Other types that are
      different from this default have to be processed separately in the
      device post parse callback.
      482e5f15
    • P
      maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption · e84b1931
      Peter Krempa 提交于
      This patch is the result of running:
      
      for i in $(git ls-files | grep -v html | grep -v \.po$ ); do
        sed -i -e "s/virDomainXMLConf/virDomainXMLOption/g" -e "s/xmlconf/xmlopt/g" $i
      done
      
      and a few manual tweaks.
      e84b1931
  11. 13 3月, 2013 1 次提交
    • P
      virCaps: conf: start splitting out irrelevat data · 27cf98e2
      Peter Krempa 提交于
      The virCaps structure gathered a ton of irrelevant data over time that.
      The original reason is that it was propagated to the XML parser
      functions.
      
      This patch aims to create a new data structure virDomainXMLConf that
      will contain immutable data that are used by the XML parser. This will
      allow two things we need:
      
      1) Get rid of the stuff from virCaps
      
      2) Allow us to add callbacks to check and add driver specific stuff
      after domain XML is parsed.
      
      This first attempt removes pointers to private data allocation functions
      to this new structure and update all callers and function that require
      them.
      27cf98e2
  12. 05 12月, 2012 1 次提交
    • 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
  13. 21 9月, 2012 1 次提交
  14. 27 7月, 2012 1 次提交
    • O
      maint: Use consistent copyright. · a4bcefbc
      Osier Yang 提交于
      This is a follow up patch of commit f9ce7dad, it modifies all
      the files which declare the copyright like "See COPYING.LIB for
      the License of this software" to use the detailed/consistent one.
      
      And deserts the outdated comments like:
      
       * libvirt-qemu.h:
       * Summary: qemu specific interfaces
       * Description: Provides the interfaces of the libvirt library to handle
       *              qemu specific methods
       *
       * Copy:  Copyright (C) 2010, 2012 Red Hat, Inc.
      
      Uses the more compact style like:
      
       * libvirt-qemu.h: Interfaces specific for QEMU/KVM driver
       *
       * Copyright (C) 2010, 2012 Red Hat, Inc.
      a4bcefbc
  15. 26 1月, 2012 1 次提交
  16. 19 12月, 2011 1 次提交
    • D
      Convert Xen & VBox drivers to use virDomainEventState · a86bbc60
      Daniel P. Berrange 提交于
      The Xen & VBox drivers deal with callbacks & dispatching of
      events directly. All the other drivers use a timer to dispatch
      events from a clean stack state, rather than deep inside the
      drivers. Convert Xen & VBox over to virDomainEventState so
      that they match behaviour of other drivers
      
      * src/conf/domain_event.c: Return count of remaining
        callbacks when unregistering event callback
      * src/vbox/vbox_tmpl.c, src/xen/xen_driver.c,
        src/xen/xen_driver.h: Convert to virDomainEventState
      a86bbc60
  17. 29 7月, 2011 3 次提交
    • E
      xen: drop unused callbacks · 1b3765fd
      Eric Blake 提交于
      Found by:
      
      for f in $(sed -n 's/.*Drv[^ ]* \([^;]*\);.*/\1/p' src/xen/xen_driver.h)
      do
        git grep "\(\.\|->\)$f\b" src/xen
      done | cat
      
      and looking through the resulting list to see which callback struct
      members are still necessary.
      
      * src/xen/xen_driver.h (xenUnifiedDriver): Drop all callbacks that
      are only used directly.
      * src/xen/xen_hypervisor.c (xenHypervisorDriver): Shrink list.
      * src/xen/xen_inotify.c (xenInotifyDriver): Likewise.
      * src/xen/xend_internal.c (xenDaemonDriver): Likewise.
      * src/xen/xm_internal.c (xenXMDriver): Likewise.
      * src/xen/xs_internal.c (xenStoreDriver): Likewise.
      1b3765fd
    • E
      xen: make direct call when there is only one subdriver · a1e641a5
      Eric Blake 提交于
      No need to use a for loop if we know there is exactly one client.
      Found by:
      
      for f in $(sed -n 's/.*Drv[^ ]* \([^;]*\);.*/\1/p' src/xen/xen_driver.h)
      do
        git grep "\(\.\|->\)$f\b" src/xen
      done | cat
      
      and looking through the resulting list to see which callback struct
      members are used exactly once.  The next patch will ensure that we
      don't reintroduce uses of these callbacks.
      
      * src/xen/xen_driver.c (xenUnifiedClose): Call close
      unconditionally, to match xenUnifiedOpen.
      (xenUnifiedNodeGetInfo, xenUnifiedDomainCreateXML)
      (xenUnifiedDomainSave, xenUnifiedDomainRestore)
      (xenUnifiedDomainCoreDump, xenUnifiedDomainUpdateDeviceFlags):
      Make direct call to lone implementation.
      * src/xen/xend_internal.h (xenDaemonDomainCoreDump)
      (xenDaemonUpdateDeviceFlags, xenDaemonCreateXML): Add prototypes.
      * src/xen/xend_internal.c (xenDaemonDomainCoreDump)
      (xenDaemonUpdateDeviceFlags, xenDaemonCreateXML): Export.
      a1e641a5
    • E
      xen: cleanup callback struct · f859919f
      Eric Blake 提交于
      Using C99 initializers and xen-specific prefixes will make it
      so that future patches are less likely to add callback members
      to the xenUnifiedDriver struct, since the goal is to get rid
      of the callback struct in the first place.
      
      * src/xen/xen_driver.h (xenUnifiedDriver): Rename all struct
      members, to make it obvious which ones are still in use.
      * src/xen/xen_driver.c: Update all callers.
      * src/xen/xen_hypervisor.c (xenHypervisorDriver): Rewrite with C99
      initializers.
      * src/xen/xend_internal.c (xenDaemonDriver): Likewise.
      * src/xen/xs_internal.c (xenStoreDriver): Likewise.
      * src/xen/xm_internal.c (xenXMDriver): Likewise.
      * src/xen/xen_inotify.c (xenInotifyDriver): Likewise.
      f859919f
  18. 22 7月, 2011 2 次提交
    • E
      build: fix bugs with destroyFlags patches · 934fdcb3
      Eric Blake 提交于
      Build failure on xenapi_driver from compiler warnings (flags was unused).
      
      Build failure on xen (incorrect number of arguments).  And in fixing
      that, I obeyed the comments of struct xenUnifiedDriver that state
      that we want to minimize the number of callback functions in that
      struct, not add to it.
      
      * src/xen/xen_driver.c (xenUnifiedDomainDestroyFlags): Use correct
      arguments.
      (xenUnifiedDomainDestroy): Simplify.
      * src/xen/xen_driver.h (xenUnifiedDriver): Remove unused callback.
      * src/xen/xen_hypervisor.c (xenHypervisorDestroyDomain): Likewise.
      * src/xen/xend_internal.c (xenDaemonDomainDestroy): Likewise.
      * src/xen/xend_internal.h (xenDaemonDomainDestroyFlags): Likewise.
      * src/xen/xm_internal.c (xenXMDriver): Likewise.
      * src/xen/xs_internal.c (xenStoreDriver): Likewise.
      * src/xen/xen_inotify.c (xenInotifyDriver): Likewise.
      * src/xenapi/xenapi_driver.c (xenapiDomainDestroyFlags): Reject
      unknown flags.
      934fdcb3
    • M
      destroy: Implement internal API for xen driver · 1edf5cc5
      Michal Privoznik 提交于
      1edf5cc5
  19. 16 7月, 2011 1 次提交
    • E
      xen: reject unknown flags · 6a713b31
      Eric Blake 提交于
      Also fix a logic bug in xenXMDomain{Attach,Detach}DeviceFlags,
      where (flags & VIR_DOMAIN_DEVICE_MODIFY_CURRENT) is always false.
      
      * src/xen/xen_driver.c (xenUnifiedDomainXMLFromNative)
      (xenUnifiedDomainXMLToNative, xenUnifiedDomainBlockPeek): Reject
      unknown flags.
      * src/xen/xen_hypervisor.c (xenHypervisorOpen)
      (xenHypervisorGetDomainState): Likewise.
      * src/xen/xen_inotify.c (xenInotifyOpen): Likewise.
      * src/xen/xs_internal.c (xenStoreOpen, xenStoreDomainGetState)
      (xenStoreDomainReboot): Likewise.
      * src/xen/xend_internal.c (xenDaemonOpen, xenDaemonDomainReboot)
      (xenDaemonDomainCoreDump, xenDaemonDomainGetState)
      (xenDaemonDomainMigratePrepare, xenDaemonDomainSetVcpusFlags,
      xenDaemonDomainGetVcpusFlags, xenDaemonAttachDeviceFlags,
      xenDaemonDetachDeviceFlags): Likewise.
      (xenDaemonDomainGetXMLDesc): Prefer unsigned flags.
      * src/xen/xend_internal.h (xenDaemonDomainGetXMLDesc): Likewise.
      * src/xen/xm_internal.h (xenXMDomainGetXMLDesc): Likewise.
      * src/xen/xm_internal.c (xenXMDomainGetXMLDesc): Likewise.
      (xenXMOpen, xenXMDomainGetState, xenXMDomainSetVcpusFlags)
      (xenXMDomainGetVcpusFlags): Reject unknown flags.
      (xenXMDomainAttachDeviceFlags, xenXMDomainDetachDeviceFlags):
      Likewise, and avoid always-false conditional.
      * src/xen/xen_driver.h (XEN_MIGRATION_FLAGS): New define.
      6a713b31