1. 19 3月, 2016 1 次提交
  2. 03 3月, 2016 1 次提交
  3. 17 2月, 2016 2 次提交
    • J
      qemu: Move qemuAssign*Alias* API's into their own module · de71e0e5
      John Ferlan 提交于
      Create a new module qemu_alias.c to handle the qemuAssign*Alias* APIs
      and the qemuDomainDeviceAliasIndex
      de71e0e5
    • 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
  4. 16 2月, 2016 1 次提交
    • A
      gic: Introduce virGICVersion enumeration · e76bef7f
      Andrea Bolognani 提交于
      We currently blindly accept any numeric value as a GIC version, even
      though only GIC v2 and GIC v3 actually exist; on the other hand, we
      reject "host", which is a perfectly legitimate value for QEMU guests.
      
      This new enumeration contains all GIC versions libvirt is aware of.
      e76bef7f
  5. 11 2月, 2016 1 次提交
    • J
      qemu: Split the command parsing routines into own module · d860b2f5
      John Ferlan 提交于
      Extract out the qemuParseCommandLine{String|Pid} into their own
      separate module - taking with it all the various static functions.
      
      Causes a ripple effect with a few other modules to include the
      new qemu_parse_command.h.
      
      Narrowed down the list of #include's in the split out module to
      those that are necessary for build.
      d860b2f5
  6. 27 1月, 2016 1 次提交
    • P
      device: cleanup input device code · 36785c7e
      Pavel Hrdina 提交于
      The current code was a little bit odd.  At first we've removed all
      possible implicit input devices from domain definition to add them later
      back if there was any graphics device defined while parsing XML
      description.  That's not all, while formating domain definition to XML
      description we at first ignore any input devices with bus different to
      USB and VIRTIO and few lines later we add implicit input devices to XML.
      
      This seems to me as a lot of code for nothing.  This patch may look
      to be more complicated than original approach, but this is a preferred
      way to modify/add driver specific stuff only in those drivers and not
      deal with them in common parsing/formating functions.
      
      The update is to add those implicit input devices into config XML to
      follow the real HW configuration visible by guest OS.
      
      There was also inconsistence between our behavior and QEMU's in the way,
      that in QEMU there is no way how to disable those implicit input devices
      for x86 architecture and they are available always, even without graphics
      device.  This applies also to XEN hypervisor.  VZ driver already does its
      part by putting correct implicit devices into live XML.
      Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
      36785c7e
  7. 18 1月, 2016 1 次提交
    • M
      Fix make check with gcc version 5 · 4b47f9b8
      Martin Kletzander 提交于
      When building with gcc-5 (particularly gcc-5.3.0 now) and having pdwtags
      installed (package dwarves) make check fails with the following error:
      
        $ make lock_protocol-struct
        GEN      lock_protocol-struct
        --- lock_protocol-structs	2016-01-13 15:04:59.318809607 +0100
        +++ lock_protocol-struct-t3	2016-01-13 15:05:17.703501234 +0100
        @@ -26,10 +26,6 @@
                 virLockSpaceProtocolNonNullString name;
                 u_int                      flags;
         };
        -enum virLockSpaceProtocolAcquireResourceFlags {
        -        VIR_LOCK_SPACE_PROTOCOL_ACQUIRE_RESOURCE_SHARED = 1,
        -        VIR_LOCK_SPACE_PROTOCOL_ACQUIRE_RESOURCE_AUTOCREATE = 2,
        -};
         struct virLockSpaceProtocolAcquireResourceArgs {
                 virLockSpaceProtocolNonNullString path;
                 virLockSpaceProtocolNonNullString name;
        Makefile:10415: recipe for target 'lock_protocol-struct' failed
        make: *** [lock_protocol-struct] Error 1
      
      That happens because without any specific options gcc doesn't keep enum
      information in the resulting binary object.  I managed to isolate the
      parameters of gcc that caused this issue to disappear, however I
      remember that they influenced the resulting binaries quite a bit and
      were definitely not something we would want to add as mandatory to the
      build process.
      
      So to deal with this cleanly, let's take that enum and separate it out
      to its own header file.  Since it is only used in the lockd driver and
      the protocol, lock_driver_lockd.h feels like a suitable name.
      Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
      4b47f9b8
  8. 12 1月, 2016 1 次提交
  9. 17 12月, 2015 1 次提交
  10. 01 12月, 2015 2 次提交
  11. 30 11月, 2015 2 次提交
    • M
      build: Create needed folders without dependency tracking · 97c9ddef
      Martin Kletzander 提交于
      The parameter --disable-dependency-tracking is supposed to speed up
      one-time build due to the fact that it disables some dependency
      extractors that, apparently, take longer time to execute.  That is a
      problem for code that is generated into builddir (especially some
      specific subdirectory) because the directory it should be installed to
      does not exists in VPATH and without the dependency tracking is not
      created.  Generating such file hence fails with -ENOENT.  In order to
      keep generating files into builddir instead of srcdir, we must create
      the directory ourselves.  This should finally fix the problem that is
      being fixed multiple times since its introduction in commit a9fe6203
      and let us continue with cleaning those parts of Makefiles that depend
      on generating files into the srcdir rather than builddir as it should
      be.
      Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
      97c9ddef
    • M
      conf: Split virDomainObjList into a separate file · 90f3c0d7
      Michal Privoznik 提交于
      Our domain_conf.* files are big enough. Not only they contain XML
      parsing code, but they served as a storage of all functions whose
      name is virDomain prefixed. This is just wrong as it gathers not
      related functions (and modules) into one big file which is then
      harder to maintain. Split virDomainObjList module into a separate
      file called virdomainobjlist.[ch].
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      90f3c0d7
  12. 27 11月, 2015 1 次提交
  13. 26 11月, 2015 4 次提交
    • D
      logging: add client for virtlogd daemon · 37ed4224
      Daniel P. Berrange 提交于
      Add the virLogManager API which allows for communication with
      the virtlogd daemon to RPC program. This provides the client
      side API to open log files for guest domains.
      
      The virtlogd daemon is setup to auto-spawn on first use when
      running unprivileged. For privileged usage, systemd socket
      activation is used instead.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      37ed4224
    • D
      logging: introduce log handling protocol · 19e5db4a
      Daniel P. Berrange 提交于
      Define a new RPC protocol for the virtlogd daemon that provides
      for handling of logs. The initial RPC method defined allows a
      client to obtain a file handle to use for writing to a log
      file for a guest domain. The file handle passed back will not
      actually refer to the log file, but rather an anonymous pipe.
      The virtlogd daemon will forward I/O between them, ensuring
      file rotation happens when required.
      
      Initially the log setup is hardcoded to cap log files at
      128 KB, and keep 3 backups when rolling over, which gives
      a max usage of 512 KB per guest.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      19e5db4a
    • D
      Import stripped down virtlockd code as basis of virtlogd · 323a329b
      Daniel P. Berrange 提交于
      Copy the virtlockd codebase across to form the initial virlogd
      code. Simple search & replace of s/lock/log/ and gut the remote
      protocol & dispatcher. This gives us a daemon that starts up
      and listens for connections, but does nothing with them.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      323a329b
    • D
      util: add APIs for reading/writing from/to rotating files · 910e65d9
      Daniel P. Berrange 提交于
      Add virRotatingFileReader and virRotatingFileWriter objects
      which allow reading & writing from/to files with automation
      rotation to N backup files when a size limit is reached. This
      is useful for guest logging when a guaranteed finite size
      limit is required. Use of external tools like logrotate is
      inadequate since it leaves the possibility for guest to DOS
      the host in between invokations of logrotate.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      910e65d9
  14. 14 10月, 2015 1 次提交
  15. 09 10月, 2015 2 次提交
    • A
      src: Remove $(builddir) usage · 6c928996
      Andrea Bolognani 提交于
      Commit 4e803227 used $(builddir) in the header search
      path to fix a build issue; however, $(builddir) is not defined
      by old autoconf versions such as the one available in CentOS 5,
      resulting in the following error:
      
        cc1: error: /util: No such file or directory
        make[3]: *** [libvirt_driver_la-fdstream.lo] Error 1
      
      Since $(builddir) is defined to always be '.', just use that
      value directly instead.
      6c928996
    • A
      src: Include $(builddir)/util in the header search path · 4e803227
      Andrea Bolognani 提交于
      Since a9fe6203, we are generating virkeymaps.h at build
      time; however, we are not including $(builddir)/util in the
      header search path, so when doing a VPATH build the compiler
      is unable to locate the file.
      
      make[2]: Entering directory
      `/home/jenkins/libvirt/systems/libvirt-fedora-20/build/src'
        GEN      util/virkeymaps.h
        ...
        CC       util/libvirt_util_la-virkeycode.lo
        CC       util/libvirt_util_la-virkeyfile.lo
        CC       util/libvirt_util_la-virlockspace.lo
        CC       util/libvirt_util_la-virlog.lo
      ../../src/util/virkeycode.c:27:24: fatal error: virkeymaps.h: No such file or directory
       #include "virkeymaps.h"
                              ^
      compilation terminated.
      4e803227
  16. 06 10月, 2015 3 次提交
    • M
      vz: remove storage driver as never used · bd6ae7b8
      Maxim Nestratov 提交于
      In fact, it was never used as far as vz has no features supporting it.
      That is why there will be no harm to anyone if we just remove this code to
      prevent further misunderstanding and efforts to support dead code.
      Signed-off-by: NMaxim Nestratov <mnestratov@virtuozzo.com>
      bd6ae7b8
    • M
      vz: remove network driver as never used · 439f29e7
      Maxim Nestratov 提交于
      At the time this code was added we had intentions to support libvirt interface
      to manage vz networks. In fact, it was never implemented completely to work
      correctly that makes me think that there will be no harm to anyone if we just
      rip it off. Moreover, in vz7 we started to use libvirt bridge network driver to
      manage networks.
      Signed-off-by: NMaxim Nestratov <mnestratov@virtuozzo.com>
      439f29e7
    • M
      Do not distribute generated virkeymaps.h · a9fe6203
      Martin Kletzander 提交于
      We are distributing virkeymaps.h and all the tools needed to rebuild
      that file.  On top of that, we are generating that file into the
      $(srcdir) and that sometimes fails when trying to do make dist in VPATH
      on rawhide fedora.  And we don't clean the file when maintainer-clean
      make target is requested.  So let's not distribute the file and rather
      let everyone rebuild it when needed and clean it when appropriate.
      Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
      a9fe6203
  17. 23 9月, 2015 1 次提交
  18. 14 9月, 2015 1 次提交
  19. 31 8月, 2015 3 次提交
  20. 26 8月, 2015 1 次提交
    • I
      lxc: Inherit namespace feature · c27553b6
      ik.nitk 提交于
      This patch adds feature for lxc containers to inherit namespaces.
      This is very similar to what lxc-tools or docker provides.  Look
      for "man lxc-start" and you will find that you can pass command
      args as [ --share-[net|ipc|uts] name|pid ]. Or check out docker
      networking option in which you can give --net=container:NAME_or_ID
      as an option for sharing +namespace.
      
      >From this patch you can add extra libvirt option to share
      namespace in following way.
      
       <lxc:namespace>
         <lxc:sharenet type='netns' value='red'/>
         <lxc:shareipc type='pid' value='12345'/>
         <lxc:shareuts type='name' value='container1'/>
       </lxc:namespace>
      
      The netns option is specific to sharenet. It can be used to
      inherit from existing network namespace.
      
      Co-authored: Daniel P. Berrange <berrange@redhat.com>
      c27553b6
  21. 20 8月, 2015 1 次提交
    • G
      libvirt-admin: Generate symbols file · a2c5d16a
      Guido Günther 提交于
      Since we're linking this into libvirtd we need some symbols to be public
      but not part of the public API so mark them as
      LIBVIRT_ADMIN_PRIVATE_<VERSION> as we do with libvirt.
      
      Making all other symbols local makes sure we don't accidentally leak
      unwanted ones.
      a2c5d16a
  22. 05 8月, 2015 1 次提交
  23. 20 7月, 2015 1 次提交
  24. 17 6月, 2015 2 次提交
  25. 16 6月, 2015 4 次提交