1. 11 2月, 2016 20 次提交
    • P
      conf: snapshot: Refactor virDomainSnapshotDefAssignExternalNames · 4319444d
      Peter Krempa 提交于
      Get rid of one indentation level by negating condition and remove ugly
      pointer arithmetic at the cost of one extra allocation.
      4319444d
    • P
    • P
      conf: snapshot: Rename disksorter to virDomainSnapshotCompareDiskIndex · d5c7655c
      Peter Krempa 提交于
      Stick to the naming pattern.
      d5c7655c
    • A
      tests: Link mock libraries against gnulib and gnulib only · 1ed0bdd8
      Andrea Bolognani 提交于
      Mock libraries should not be linked against libvirt, but some of
      them did - fix that.
      
      On the other hand, not linking against gnulib can cause build
      failures on mingw, so define a new $(MOCKLIBS_LIBS) variable and
      use it everywhere.
      1ed0bdd8
    • A
      tests: Use plain close() in mock code · a03cbfe0
      Andrea Bolognani 提交于
      The virportallocatortest.c file is compiled both as a test case
      and as a mock library; in the latter case, it can't use
      VIR_FORCE_CLOSE() because mock libraries are not linked against
      libvirt.
      
      Replace VIR_FORCE_CLOSE() with plain close() to solve the issue.
      a03cbfe0
    • M
      dbus: Don't unref NULL messages · 862298a2
      Michal Privoznik 提交于
      Apparently we are not the only ones with dumb free functions
      because dbus_message_unref() does not accept NULL either. But if
      I were to vote, this one is even more evil. Instead of returning
      an error just like we do it immediately dereference any pointer
      passed and thus crash you app. Well done DBus!
      
        Program received signal SIGSEGV, Segmentation fault.
        [Switching to Thread 0x7f878ebda700 (LWP 31264)]
        0x00007f87be4016e5 in ?? () from /usr/lib64/libdbus-1.so.3
        (gdb) bt
        #0  0x00007f87be4016e5 in ?? () from /usr/lib64/libdbus-1.so.3
        #1  0x00007f87be3f004e in dbus_message_unref () from /usr/lib64/libdbus-1.so.3
        #2  0x00007f87bf6ecf95 in virSystemdGetMachineNameByPID (pid=9849) at util/virsystemd.c:228
        #3  0x00007f879761bd4d in qemuConnectCgroup (driver=0x7f87600a32a0, vm=0x7f87600c7550) at qemu/qemu_cgroup.c:909
        #4  0x00007f87976386b7 in qemuProcessReconnect (opaque=0x7f87600db840) at qemu/qemu_process.c:3386
        #5  0x00007f87bf6edfff in virThreadHelper (data=0x7f87600d5580) at util/virthread.c:206
        #6  0x00007f87bb602334 in start_thread (arg=0x7f878ebda700) at pthread_create.c:333
        #7  0x00007f87bb3481bd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
        (gdb) frame 2
        #2  0x00007f87bf6ecf95 in virSystemdGetMachineNameByPID (pid=9849) at util/virsystemd.c:228
        228         dbus_message_unref(reply);
        (gdb) p reply
        $1 = (DBusMessage *) 0x0
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      862298a2
    • J
      virhook: do not save the return value of virBuildPath · 21e2e081
      Ján Tomko 提交于
      This function returns -1 on allocation error, there's no
      need to check the path for NULL again.
      21e2e081
    • J
      Clean up usage of 'ret' variable · 2542eb75
      Ján Tomko 提交于
      Do not store the return value of called functions in the same variable
      as the (future) return value of the current function.
      
      This makes tracking the origin of the value easier and reduces
      the chance of introducing a new point of exit without resetting
      the return value back to -1.
      2542eb75
    • J
      Prohibit verbose strcat · 28e5655d
      Ján Tomko 提交于
      Using strcat directly is more readable than passing strlen
      of the copied string to strncat.
      28e5655d
    • J
      vbox: remove more extra spaces · 4d569245
      Ján Tomko 提交于
      4d569245
    • J
      vbox: remove extra spaces from function headers · a3dd574a
      Ján Tomko 提交于
      Also fix the curly brace to pass sytnax-check.
      a3dd574a
    • J
      vbox: remove extra spaces from assignments · b31e4d00
      Ján Tomko 提交于
      b31e4d00
    • J
      ebe24c84
    • J
      vbox: remove extra spaces from macro definitions · 62859993
      Ján Tomko 提交于
      62859993
    • M
      qemu: Connect to guest agent iff needed · 88ed9d77
      Michal Privoznik 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=1293351
      
      Since we already have virtio channel events, we know when guest
      agent within guest has (dis-)connected. Instead of us blindly
      connecting to a socket that no one is listening to, we can just
      follow what qemu-ga does. This has a nice benefit that we don't
      need to 'guest-ping' the agent just to timeout and find out
      nobody is listening.
      
      The way that this commit is implemented:
      - don't connect in qemuProcessLaunch directly, defer that to event
        callback (which already follows the agent) -
        processSerialChangedEvent
      - after migration is settled, before we resume vCPUs, ask qemu
        whether somebody is listening on the socket and if so, connect
        to it.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      88ed9d77
    • 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
    • J
      qemu: Check return status for virDomainGraphicsListenSetAddress · 336d4dac
      John Ferlan 提交于
      Recent refactors in the vbox code to check the return status for the
      function tipped Coverity's scales of justice for any functions that
      do not check status - such as this one.
      
      While I'm at it, since the call is essentially the same other than
      whether starting from val or val+1 when val[0] = '[', just adjust
      the val pointer by one and have one call instead of two.
      
      Additionally, the call to virDomainGraphicsListenGetAddress is redundant
      since it checking that the address field got filled.  It's a leftover
      from the strndup -> ListenSetAddress conversion (commit id 'ef79fb5b')
      Signed-off-by: NJohn Ferlan <jferlan@redhat.com>
      336d4dac
    • J
      qemu: Introduce qemuParseCommandLineVnc · 7b3adac4
      John Ferlan 提交于
      Refactor qemuParseCommandLine to pull out the "-vnc" argument parsing
      into its own helper function.  Modify the code to use "cleanup" instead
      of "error" and use the standard return processing to indicate success
      or failure by using ret
      Signed-off-by: NJohn Ferlan <jferlan@redhat.com>
      7b3adac4
    • A
      Revert "tests: Don't link mock libraries against libvirt and gnulib" · 51c70705
      Andrea Bolognani 提交于
      This reverts commit 6aa90452.
      
      Turns out that not linking against libvirt and gnulib is okay for
      regular Linux (and FreeBSD) builds, but makes mingw very unhappy.
      
        .../virnetserverclientmock_la-virnetserverclientmock.o:
          In function `virNetSocketGetSELinuxContext':
          .../virnetserverclientmock.c:61: undefined reference to `rpl_strdup'
        .../libvirportallocatormock_la-virportallocatortest.o:
          In function `init_syms':
          .../virportallocatortest.c:61: undefined reference to `virFileClose'
      51c70705
    • A
      tests: Don't link mock libraries against libvirt and gnulib · 6aa90452
      Andrea Bolognani 提交于
      Mock libraries are used with LD_PRELOAD from test binaries that
      are already linked against those libraries, so they will be able
      to resolve the symbols anyway.
      6aa90452
  2. 10 2月, 2016 11 次提交
    • M
      xenconfig: Properly check retval of virDomainGraphicsListenSetAddress · e01e1e16
      Michal Privoznik 提交于
      The function, like others in our code, returns zero on success
      and a negative value on error. However, there are two places in
      xenconfig source code where we check for non-zero value. While
      the function can't currently return a positive value, those
      checks look okay, but does not really follow our style.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      e01e1e16
    • J
      libxl: keepalive messages support · 5194eb95
      Joao Martins 提交于
      This patch introduces keep alive messages support for P2P migration
      and it adds two new configuration entries namely 'keepalive_interval'
      'keepalive_count' to control it. Behavior of these entries is the
      same as qemu driver thus the description is copied from there
      with just a few simplifications.
      Signed-off-by: NJoao Martins <joao.m.martins@oracle.com>
      5194eb95
    • J
      libxl: add p2p migration · a79da245
      Joao Martins 提交于
      Introduce support for VIR_MIGRATE_PEER2PEER in libvirt migration.
      Most of the changes occur at the source and no modifications at
      the receiver.
      
      In P2P mode there is only the Perform phase so we must handle the
      connection with the destination and actually perform the
      migration. libxlDomainPerformP2P implements the connection to the
      destination and libxlDoMigrateP2P implements the actual migration
      logic with virConnectPtr. In this function we take care of doing
      all phases of migration in the destination similar to
      virDomainMigrateVersion3Full. We appropriately save the last
      error reported in each of the phases to provide proper reporting.
      We don't yet support VIR_MIGRATE_TUNNELED and we always use V3
      with extensible params, thus it also makes the implementation
      simpler.
      
      It is worth noting that the receiver didn't have any changes, and
      since it's still the v3 sequence thus it is possible to migrate
      from a P2P to non-P2P host.
      Signed-off-by: NJoao Martins <joao.m.martins@oracle.com>
      a79da245
    • C
      tests: qemu: More aarch64 virtio and pci tests · 5a1ccaeb
      Cole Robinson 提交于
      Clarify the point of some of the test cases by renaming them. Add more
      xml2xml tests.
      5a1ccaeb
    • C
      tests: qemuxml2xml: assign device addresses · c1c4d0d5
      Cole Robinson 提交于
      We use the PreFormat callback for this. Many test cases need to be extended
      to pass in proper qemuCaps flags so AssignAddresses doesn't throw errors.
      
      One test case (pcie-root-port-too-many) is dropped, since it was meant
      only for checking an error condition in qemuxml2argv, and one we add in
      AssignAddresses it errors here too.
      
      Long term I think AssignAddresses should be handled in qemu's PostParse
      callback, but that's not entirely straightforward. Handling it here
      means we can get the test suite churn over with.
      c1c4d0d5
    • C
      tests: utils: Add PreFormat callback for CompareXML2XML helper · 8e0fd243
      Cole Robinson 提交于
      This allows individual driver tests to hook in their own code before
      the def is formatted and compared.
      
      We will eventually use this in the qemuxml2xml
      8e0fd243
    • M
      virStringListLength: Ensure const correctness · d1a71023
      Michal Privoznik 提交于
      The virStringListLength function does not ever modify the passed
      string list. It merely counts the items in it. Make sure that we
      reflect this bit in the function header.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      
      (crobinso: fix up spacing and squash in sheepdog bit suggested
       by Andrea)
      d1a71023
    • C
      tests: qemuxml2xml: specify qemuCaps in test cases · 129c3532
      Cole Robinson 提交于
      Similar to how we do it for qemuxml2argvtest. This will be used in future
      patches.
      129c3532
    • C
      tests: Unconditionally enable QEMU_CAPS_DEVICE · 51045df0
      Cole Robinson 提交于
      QEMU_CAPS_DEVICE is always enabled for qemu binaries we support.
      Sync qemuxml2* to match, and regenerate all test output.
      51045df0
    • C
      tests: qemuxml2argv: remove some QEMU_CAPS_DEVICE problem cases · e9394d69
      Cole Robinson 提交于
      When we unconditionally enable QEMU_CAPS_DEVICE, these tests need
      some massaging, so do it ahead of time to not mix it in with the
      big test refresh.
      
      - minimal-s390 is not a real world working config, so drop it
      - disk-usb was testing for an old code path that will be removed.
        instead use it to test lack of USB disk support, and rename it
        to disk-usb-nosupport. Switch xml2xml to use disk-usb-device for
        input.
      - cputune-numatune was needlessly using q35, switch it to an older
        machine type
      e9394d69
    • M
      virDomainFormatSchedDef: Initialize @priority · 73b70b40
      Michal Privoznik 提交于
      Older gcc fails to see that the variable is set iff @hasPriority
      == true in which case the former is set a value. Initialize the
      value while declaring it to make the compiler shut up.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      73b70b40
  3. 09 2月, 2016 9 次提交