1. 28 3月, 2019 1 次提交
  2. 14 12月, 2018 3 次提交
    • D
      Enforce a standard header file guard symbol name · 568a4172
      Daniel P. Berrangé 提交于
      Require that all headers are guarded by a symbol named
      
        LIBVIRT_$FILENAME
      
      where $FILENAME is the uppercased filename, with all characters
      outside a-z changed into '_'.
      
      Note we do not use a leading __ because that is technically a
      namespace reserved for the toolchain.
      Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
      568a4172
    • D
      Fix many mistakes & inconsistencies in header file layout · 4cfd7090
      Daniel P. Berrangé 提交于
      This introduces a syntax-check script that validates header files use a
      common layout:
      
        /*
         ...copyright header...
         */
        <one blank line>
        #ifndef SYMBOL
        # define SYMBOL
        ....content....
        #endif /* SYMBOL */
      
      For any file ending priv.h, before the #ifndef, we will require a
      guard to prevent bogus imports:
      
        #ifndef SYMBOL_ALLOW
        # error ....
        #endif /* SYMBOL_ALLOW */
        <one blank line>
      
      The many mistakes this script identifies are then fixed.
      Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
      4cfd7090
    • D
      Remove all Author(s): lines from source file headers · 60046283
      Daniel P. Berrangé 提交于
      In many files there are header comments that contain an Author:
      statement, supposedly reflecting who originally wrote the code.
      In a large collaborative project like libvirt, any non-trivial
      file will have been modified by a large number of different
      contributors. IOW, the Author: comments are quickly out of date,
      omitting people who have made significant contribitions.
      
      In some places Author: lines have been added despite the person
      merely being responsible for creating the file by moving existing
      code out of another file. IOW, the Author: lines give an incorrect
      record of authorship.
      
      With this all in mind, the comments are useless as a means to identify
      who to talk to about code in a particular file. Contributors will always
      be better off using 'git log' and 'git blame' if they need to  find the
      author of a particular bit of code.
      
      This commit thus deletes all Author: comments from the source and adds
      a rule to prevent them reappearing.
      
      The Copyright headers are similarly misleading and inaccurate, however,
      we cannot delete these as they have legal meaning, despite being largely
      inaccurate. In addition only the copyright holder is permitted to change
      their respective copyright statement.
      Reviewed-by: NErik Skultety <eskultet@redhat.com>
      Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
      60046283
  3. 04 7月, 2018 1 次提交
  4. 01 2月, 2018 4 次提交
    • J
      qemu: Update qemuDomainFindSCSIControllerModel return · 5b5bff35
      John Ferlan 提交于
      Now that the controller model is updated during post parse callback,
      this code no longer needs to fetch the model based on the capabilities
      and can just return the model directly if the controller is found.
      
      Removal of @qemuCaps cascades through various callers which are now
      updated to not pass the capabilities.
      5b5bff35
    • J
      qemu: Introduce qemuDomainSetSCSIControllerModel · 62f8c947
      John Ferlan 提交于
      During post parse processing, let's force setting the controller
      model to default value if not already set for defined controllers
      (e.g. the non implicit ones).
      62f8c947
    • J
      qemu: Introduce qemuDomainGetSCSIControllerModel · fadfb4f9
      John Ferlan 提交于
      Rename and rework qemuDomainSetSCSIControllerModel since we're
      really not setting the SCSI controller model. Instead the code
      is either returning the existing SCSI controller model value, the
      default value based on the capabilities, or -1 with the error set.
      fadfb4f9
    • J
      qemu: Introduce qemuDomainFindSCSIControllerModel · 6ae6ffd8
      John Ferlan 提交于
      Rather than repeat multiple steps in order to find the SCSI
      controller model, let's combine them into one helper that will
      return either the model from the definition or the default
      model based on the capabilities.
      
      This patch adds an extra check/error that the controller
      that's being found actually exists. This just clarifies that
      the error was because the controller doesn't exist rather
      than the more generic error that we were unable to determine
      the model from qemuDomainSetSCSIControllerModel when a -1
      was passed in and the capabilities were unable to find one.
      6ae6ffd8
  5. 19 10月, 2017 1 次提交
    • J
      Split out qemuDomainEnsureVirtioAddress · f16600ff
      Ján Tomko 提交于
      Split out the common code responsible for reserving/assigning
      PCI/CCW addresses for virtio disks into a helper function
      for reuse by other virtio devices.
      f16600ff
  6. 18 7月, 2017 1 次提交
  7. 01 12月, 2016 1 次提交
    • L
      qemu: propagate virQEMUDriver object to qemuDomainDeviceCalculatePCIConnectFlags · 9b0848d5
      Laine Stump 提交于
      If libvirtd is running unprivileged, it can open a device's PCI config
      data in sysfs, but can only read the first 64 bytes. But as part of
      determining whether a device is Express or legacy PCI,
      qemuDomainDeviceCalculatePCIConnectFlags() will be updated in a future
      patch to call virPCIDeviceIsPCIExpress(), which tries to read beyond
      the first 64 bytes of the PCI config data and fails with an error log
      if the read is unsuccessful.
      
      In order to avoid creating a parallel "quiet" version of
      virPCIDeviceIsPCIExpress(), this patch passes a virQEMUDriverPtr down
      through all the call chains that initialize the
      qemuDomainFillDevicePCIConnectFlagsIterData, and saves the driver
      pointer with the rest of the iterdata so that it can be used by
      qemuDomainDeviceCalculatePCIConnectFlags(). This pointer isn't used
      yet, but will be used in an upcoming patch (that detects Express vs
      legacy PCI for VFIO assigned devices) to examine driver->privileged.
      9b0848d5
  8. 15 11月, 2016 1 次提交
    • L
      qemu: set/use proper pciConnectFlags during hotplug · abb7a4bd
      Laine Stump 提交于
      Before now, all the qemu hotplug functions assumed that all devices to
      be hotplugged were legacy PCI endpoint devices
      (VIR_PCI_CONNECT_TYPE_PCI_DEVICE). This worked out "okay", because all
      devices *are* legacy PCI endpoint devices on x86/440fx machinetypes,
      and hotplug didn't work properly on machinetypes using PCIe anyway
      (hotplugging onto a legacy PCI slot doesn't work, and until commit
      b87703cf any attempt to manually specify a PCIe address for a
      hotplugged device would be erroneously rejected).
      
      This patch makes all qemu hotplug operations honor the pciConnectFlags
      set by the single all-knowing function
      qemuDomainDeviceCalculatePCIConnectFlags(). This is done in 3 steps,
      but in a single commit since we would have to touch the other points
      at each step anyway:
      
      1) add a flags argument to the hypervisor-agnostic
      virDomainPCIAddressEnsureAddr() (previously it hardcoded
      ..._PCI_DEVICE)
      
      2) add a new qemu-specific function qemuDomainEnsurePCIAddress() which
      gets the correct pciConnectFlags for the device from
      qemuDomainDeviceConnectFlags(), then calls
      virDomainPCIAddressEnsureAddr().
      
      3) in qemu_hotplug.c replace all calls to
      virDomainPCIAddressEnsureAddr() with calls to
      qemuDomainEnsurePCIAddress()
      
      So in effect, we're putting a "shim" on top of all calls to
      virDomainPCIAddressEnsureAddr() that sets the right pciConnectFlags.
      abb7a4bd
  9. 11 11月, 2016 1 次提交
    • P
      qemu: Assign slots to memory devices prior to usage · ce1ee02a
      Peter Krempa 提交于
      As with other devices assign the slot number right away when adding the
      device. This will make the slot numbers static as we do with other
      addressing elements and it will ultimately simplify allocation of the
      alias in a static way which does not break with qemu.
      ce1ee02a
  10. 26 7月, 2016 1 次提交
    • T
      Add qemuDomainCCWAddrSetCreateFromDomain · af174f6e
      Tomasz Flendrich 提交于
      The address sets (pci, ccw, virtio serial) are currently cached
      in qemu private data, but all the information required to recreate
      these sets is in the domain definition. Therefore I am removing
      the redundant data and adding a way to recalculate these sets.
      
      Add a function that calculates the ccw address set
      from the domain definition.
      af174f6e
  11. 23 6月, 2016 1 次提交
  12. 11 3月, 2016 1 次提交
    • J
      qemu: Introduce qemuBuildControllerDevCommandLine · 4908772e
      John Ferlan 提交于
      Add new function to manage adding the controller -device options to the
      command line removing that task from the mainline qemuBuildCommandLine.
      
      Also adjust to using const virDomainDef instead of virDomainDefPtr.
      This causes collateral damage in order to modify called APIs to use
      the const virDomainDef instead as well.
      Signed-off-by: NJohn Ferlan <jferlan@redhat.com>
      4908772e
  13. 17 2月, 2016 1 次提交
    • J
      qemu: Move qemuDomain*Address* functions · 177db487
      John Ferlan 提交于
      Create new modules qemu_domain_address.c and qemu_domain_address.h to
      contain all the new functions and header data. Additionally move any
      supporting static functions.
      
      Make qemuDomainSupportsPCI non static.
      
      Also, move and rename the following:
      
      qemuSetSCSIControllerModel to qemuDomainSetSCSIControllerModel
      qemuCollectPCIAddress to qemuDomainCollectPCIAddress
      qemuValidateDevicePCISlotsPIIX3 to qemuDomainValidateDevicePCISlotsPIIX3
      qemuAssignDevicePCISlots to qemuDomainAssignDevicePCISlots
      Signed-off-by: NJohn Ferlan <jferlan@redhat.com>
      177db487
  14. 18 12月, 2015 1 次提交
  15. 09 12月, 2015 1 次提交
  16. 19 8月, 2014 4 次提交
  17. 21 12月, 2012 1 次提交
  18. 21 9月, 2012 1 次提交
  19. 23 7月, 2012 1 次提交
    • O
      Desert the FSF address in copyright · f9ce7dad
      Osier Yang 提交于
      Per the FSF address could be changed from time to time, and GNU
      recommends the following now: (http://www.gnu.org/licenses/gpl-howto.html)
      
        You should have received a copy of the GNU General Public License
        along with Foobar.  If not, see <http://www.gnu.org/licenses/>.
      
      This patch removes the explicit FSF address, and uses above instead
      (of course, with inserting 'Lesser' before 'General').
      
      Except a bunch of files for security driver, all others are changed
      automatically, the copyright for securify files are not complete,
      that's why to do it manually:
      
        src/security/security_selinux.h
        src/security/security_driver.h
        src/security/security_selinux.c
        src/security/security_apparmor.h
        src/security/security_apparmor.c
        src/security/security_driver.c
      f9ce7dad
  20. 22 2月, 2011 3 次提交
  21. 10 3月, 2010 1 次提交
  22. 21 9月, 2009 1 次提交
    • D
      Move network driver into src/network · acfe3f26
      Daniel P. Berrange 提交于
      * daemon/qemud.c, src/Makefile.am: Adapt for changed paths
      * src/network_driver.c: Rename to src/network/bridge_driver.c
      * src/network_driver.h: Rename to src/network/bridge_driver.h
      acfe3f26
  23. 10 10月, 2008 1 次提交
  24. 21 8月, 2008 1 次提交
  25. 08 2月, 2008 1 次提交
    • M
      Fix gcc-4.3.0 "inlining failed" warning. · 3da5504e
      Mark McLoughlin 提交于
      * src/internal.h: move xstrol() variants from here ...
      
      * src/util.[ch]: ... to here and rename to virStrToLong()
      
      * src/libvirt_sym.version: export __virStrToLong_i() for
      virsh and qemud.
      
      * src/nodeinfo.c, src/stats_linux.c, src/virsh.c,
        src/xend_internal.c, qemud/qemud.c: replace xstrtol()
      calls with virStrToLong()
      
      * src/nodeinfo.h: don't include internal.h, which was only
      needed for xstrtol(), but instead include libvirt.h which
      is suffificient for the declarations in the header.
      3da5504e
  26. 26 7月, 2007 1 次提交
  27. 29 6月, 2007 1 次提交
  28. 27 6月, 2007 3 次提交