1. 30 7月, 2013 8 次提交
    • E
      build: fix shunloadtest breakage · 87c0eab4
      Eric Blake 提交于
      Commit 93ec384b was tested on mingw, but broke the build on Linux:
      
        CCLD     shunloadtest
      shunloadtest.o: In function `main':
      /home/eblake/libvirt/tests/shunloadtest.c:106: undefined reference to `virFilePrintf'
      ...
      ssh.o: In function `main':
      /home/eblake/libvirt/tests/ssh.c:43: undefined reference to `virFilePrintf'
      /home/eblake/libvirt/tests/ssh.c:49: undefined reference to `virFilePrintf'
      
      * tests/testutils.h (fprintf): Provide escape hatch.
      * tests/shunloadtest.c: Use it.
      * tests/ssh.c: Likewise.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      87c0eab4
    • E
      examples: fix mingw build vs. printf · 6f4458a0
      Eric Blake 提交于
      Mingw *printf is a moving target; newer mingw now provides a version
      of asprintf() that fails to understand %lld:
      
        CC       event_test-event-test.o
      ../../../../examples/domain-events/events-c/event-test.c: In function 'myDomainEventRTCChangeCallback':
      ../../../../examples/domain-events/events-c/event-test.c:270:18: error: unknown conversion type character 'l' in format [-Werror=format=]
                        virDomainGetID(dom), offset) < 0)
                        ^
      
      But since our examples already admitted that they were hacking around
      a mingw deficiency, it is easier to just use printf() directly, coupled
      with <inttypes.h> macros, for a more portable work-around.
      
      * examples/domain-events/events-c/event-test.c
      (myDomainEventRTCChangeCallback): Use PRIdMAX instead of asprintf.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      6f4458a0
    • E
      tests: consistently use virFilePrintf · 93ec384b
      Eric Blake 提交于
      Commit a2619962 introduced virFilePrintf to work around the fact
      that gnulib doesn't (yet) provide guarantees about fprintf() vs.
      %z, which in turn causes all sorts of mingw compilation errors:
      
      ../../tests/testutils.c: In function 'virtTestResult':
      ../../tests/testutils.c:101:9: error: unknown conversion type character 'z' in format [-Werror=format=]
               fprintf(stderr, "%3zu) %-60s ", testCounter, name);
               ^
      
      Rather than s/fprintf/virFilePrintf/ (and reformatting loads of
      lines) across multiple files, it's easier to just hack the entire
      testsuite to take advantage of our helper function.
      
      * tests/testutils.c: s/fprintf/virFilePrintf/ for mingw.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      93ec384b
    • E
      build: skip systemd mock on non-Linux · 524f52c3
      Eric Blake 提交于
      A cross-compile to mingw failed:
      
        CC       virsystemdmock_la-virsystemdmock.lo
      ../../tests/virsystemdmock.c:29:6: error: 'dbus_connection_set_change_sigpipe' redeclared without dllimport attribute: previous dllimport ignored [-Werror=attributes]
       void dbus_connection_set_change_sigpipe(dbus_bool_t will_modify_sigpipe ATTRIBUTE_UNUSED)
            ^
      
      But when you think about it, systemd is Linux-only, and even our
      use of LD_PRELOAD to provide mock syscalls is Linux-only.
      
      * tests/virsystemdmock.c: Avoid compilation outside Linux.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      524f52c3
    • D
      Rename VIR_DOMAIN_PAUSED_GUEST_PANICKED to VIR_DOMAIN_PAUSED_CRASHED · 63d261f3
      Daniel P. Berrange 提交于
      The VIR_DOMAIN_PAUSED_GUEST_PANICKED constant is badly named,
      leaking the QEMU event name. Elsewhere in the API we use
      'CRASHED' rather than 'PANICKED', and the addition of 'GUEST'
      is redundant since all events are guest related.
      
      Thus rename it to VIR_DOMAIN_PAUSED_CRASHED, which matches
      with VIR_DOMAIN_RUNNING_CRASHED and VIR_DOMAIN_EVENT_CRASHED.
      
      It was added in commit 14e7e0ae
      which post-dates v1.1.0, so is safe to rename before 1.1.1
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      63d261f3
    • D
      Remove VIR_DOMAIN_SHUTDOWN_CRASHED from public API · 8c20d3f8
      Daniel P. Berrange 提交于
      The VIR_DOMAIN_SHUTDOWN_CRASHED state constant does not appear
      to be used in the QEMU code anyway. It also doesn't make much
      (any) sense, since the 'shutdown' state is a transient state
      between 'running' and 'shutoff' and when a guest crashes, it
      does not end up in a 'shutdown' state, only 'shutoff'.
      
      It was added in commit 14e7e0ae
      which post-dates v1.1.0, so is safe to remove before 1.1.1
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      8c20d3f8
    • D
      Fix dbus message reading code on big endian hosts · 9ed3e6c1
      Daniel P. Berrange 提交于
      The way we were casting small (<32bit) integers was broken
      on big endian hosts, causing stack smashing. This was detected
      in the test suite either by test failures due to incorrect
      results, or by libc/gcc abort'ing with its stack canary
      triggered.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      9ed3e6c1
    • J
      spec: Cat test-suite.log if make check fails · 095ba439
      Jiri Denemark 提交于
      Current automake enables parallel test by default, which means test
      details are only logged in test-suite.log and not printed to stderr.
      This patch makes test failures directly visible in RPM build logs even
      when parallel tests are turned on.
      095ba439
  2. 29 7月, 2013 11 次提交
    • E
      build: fix another virdbus issue on mingw · 9d62472f
      Eric Blake 提交于
      Depending on the set of mingw packages installed, it is possible
      that other .c files hit the mingw header pollution from the
      virdbus.h file.
      
      In file included from ../../src/rpc/virnetserver.c:39:0:
      ../../src/util/virdbus.h:41:35: error: expected ';', ',' or ')' before 'struct'
                             const char *interface,
                                         ^
      
      * src/util/virdbus.h (virDBusCallMethod): Match .c file change.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      9d62472f
    • E
      build: fix virutil build on mingw · cd725c7a
      Eric Blake 提交于
      On platforms without decent group support, the build failed:
      
      Cannot export virGetGroupList: symbol not defined
      ./.libs/libvirt_security_manager.a(libvirt_security_manager_la-security_dac.o): In function `virSecurityDACPreFork':
      /home/eblake/libvirt-tmp/build/src/../../src/security/security_dac.c:248: undefined reference to `virGetGroupList'
      collect2: error: ld returned 1 exit status
      
      * src/util/virutil.c (virGetGroupList): Provide dummy implementation.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      cd725c7a
    • E
      build: fix virthread build on mingw · 4c1c336c
      Eric Blake 提交于
      Our recent conversion to make VIR_ALLOC report oom wasn't
      tested on mingw:
      
      In file included from ../../src/util/virthread.c:29:0:
      ../../src/util/virthreadwin32.c: In function 'virCondWait':
      ../../src/util/virthreadwin32.c:166:81: error: 'VIR_FROM_THIS' undeclared (first use in this function)
           if (VIR_REALLOC_N(c->waiters, c->nwaiters + 1) < 0) {
                                                                                       ^
      
      * src/util/virthreadwin32.c (VIR_FROM_THIS): Define.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      4c1c336c
    • E
      build: fix virdbus build on mingw · 61fac39e
      Eric Blake 提交于
      Mingw headers pollute the namespace.
      
        CC       libvirt_util_la-virdbus.lo
      ../../src/util/virdbus.c:1102:35: error: expected ';', ',' or ')' before 'struct'
                             const char *interface,
                                         ^
      
      * src/util/virdbus.c (virDBusCallMethod): Avoid 'interface'.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      61fac39e
    • E
      build: fix vircgroup build on mingw · a2d0c3f5
      Eric Blake 提交于
      The previous patch was incomplete.
      
        CC       libvirt_util_la-vircgroup.lo
      ../../src/util/vircgroup.c:70:12: error: 'virCgroupPartitionEscape' declared 'static' but never defined [-Werror=unused-function]
       static int virCgroupPartitionEscape(char **path);
                  ^
      
      * src/util/vircgroup.c (virCgroupPartitionEscape): Move forward
      declaration inside conditional.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      a2d0c3f5
    • D
      Conditionalize build of virCgroupValidateMachineGroup · 7cf81fa1
      Daniel P. Berrange 提交于
      The virCgroupValidateMachineGroup method calls some functions
      which are only conditionally compiled, thus it too must be
      made conditional. This fixes the build on non-Linux hosts.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      7cf81fa1
    • E
      build: fix VPATH 'make check' · 7df291a6
      Eric Blake 提交于
      A VPATH build 'make check' was failing with:
      
        GEN      check-driverimpls
      Can't open ../../src/../../src/lxc/lxc_monitor_protocol.h: No such file or directory at ../../src/check-driverimpls.pl line 29, <> line 27153.
      Can't open ../../src/../../src/lxc/lxc_monitor_protocol.c: No such file or directory at ../../src/check-driverimpls.pl line 29, <> line 27153.
      ...
        GEN      check-aclrules
      cannot read ../../src/../../src/remote/remote_protocol.x at ../../src/check-aclrules.pl line 128.
      
      because $(srcdir) was being prepended to file names that already
      included it.
      
      * src/Makefile.am (check-driverimpls): Don't add srcdir twice.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      7df291a6
    • C
      python: Drop TODO · 3347a420
      Cole Robinson 提交于
      File hasn't been really touched for 7 years. And with recent rawhide
      changes it contributed to an RPM build failure. Let's drop it.
      
      This also removes installation of a libvirt-python doc dir, so drop
      handling of it from the RPM spec.
      3347a420
    • D
      Fix probing of legacy Xen driver to not leave URI set · b7caae92
      Daniel P. Berrange 提交于
      When the legacy Xen driver probes with a NULL URI, and
      finds itself running on Xen, it will set conn->uri. A
      little bit later though it checks to see if libxl support
      exists, and if so declines the driver. This leaves the
      conn->uri set to 'xen:///', so if libxl also declines
      it, it prevents probing of the QEMU driver.
      
      Once a driver has set the conn->uri, it must *never*
      decline an open request. So we must move the libxl
      check earlier
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      b7caae92
    • L
      cpu: Fix one compile error for PPC. · 18398cfd
      Li Zhang 提交于
      CPU data structure is refined, which causes one compile error for PPC.
      Signed-off-by: NLi Zhang <zhlcindy@linux.vnet.ibm.com>
      18398cfd
    • G
      caps: use -device for primary video when qemu >=1.6 · e3f2686b
      Guannan Ren 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=981094
      The commit 0ad9025e introduce qemu flag QEMU_CAPS_DEVICE_VIDEO_PRIMARY
      for using -device VGA, -device cirrus-vga, -device vmware-svga and
      -device qxl-vga. In use, for -device qxl-vga, mouse doesn't display
      in guest window like the desciption in above bug.
      This patch try to use -device for primary video when qemu >=1.6 which
      contains the bug fix patch
      e3f2686b
  3. 27 7月, 2013 2 次提交
    • E
      build: avoid uninitialized use warning · c86c3c32
      Eric Blake 提交于
      Otherwise, with new enough gcc compiling at -O2, the build fails with:
      ../../src/conf/domain_conf.c: In function ‘virDomainDeviceDefPostParse’:
      ../../src/conf/domain_conf.c:2821:29: error: ‘cnt’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
                   for (i = 0; i < *cnt; i++) {
                                   ^
      ../../src/conf/domain_conf.c:2795:20: note: ‘cnt’ was declared here
               size_t i, *cnt;
                          ^
      ../../src/conf/domain_conf.c:2794:30: error: ‘arrPtr’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
               virDomainChrDefPtr **arrPtr;
                                    ^
      
      * src/conf/domain_conf.c (virDomainChrGetDomainPtrs): Always
      assign into output parameters.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      c86c3c32
    • D
      Set default partition in libvirtd instead of libvirt_lxc · 35fe8d97
      Daniel P. Berrange 提交于
      By setting the default partition in libvirt_lxc it is not
      visible when querying the live XML. Move setting of the
      default partition into libvirtd virLXCProcessStart
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      35fe8d97
  4. 26 7月, 2013 16 次提交
  5. 25 7月, 2013 3 次提交
    • G
      virdbustest: Don't pass number of arguments as long long · 6b79a472
      Guido Günther 提交于
      since sizeof(int) != sizeof(long long) on 32bit archs.
      
      This unbreaks virdbustest which otherwise fails like:
      
       (gdb) bt
       #0  __strlen_sse2_bsf () at ../sysdeps/i386/i686/multiarch/strlen-sse2-bsf.S:50
       #1  0x405907d2 in ?? () from /lib/i386-linux-gnu/libdbus-1.so.3
       #2  0x4057c140 in ?? () from /lib/i386-linux-gnu/libdbus-1.so.3
       #3  0x4057e7ec in dbus_message_iter_append_basic () from /lib/i386-linux-gnu/libdbus-1.so.3
       #4  0x400742ec in virDBusMessageIterEncode (args=0xbfd4b8f0 "k\321\004\b.", types=0x804d260 "",
           rootiter=0xbfd4b844) at util/virdbus.c:560
       #5  virDBusMessageEncodeArgs (msg=msg@entry=0x893c278, types=types@entry=0x804d25c "sais",
           args=args@entry=0xbfd4b8d8 "r\320\004\b\003") at util/virdbus.c:921
       #6  0x40075917 in virDBusMessageEncode (msg=0x893c278, types=0x804d25c "sais") at util/virdbus.c:959
       #7  0x0804a4a1 in testMessageArray (args=0x0) at virdbustest.c:195
       #8  0x0804c404 in virtTestRun (title=title@entry=0x804cfcb "Test message array ",
           nloops=nloops@entry=1, body=body@entry=0x804a3f0 <testMessageArray>, data=data@entry=0x0)
           at testutils.c:168
       #9  0x08049346 in mymain () at virdbustest.c:384
       #10 0x0804cb2e in virtTestMain (argc=argc@entry=1, argv=argv@entry=0xbfd4bb24,
           func=func@entry=0x80492c0 <mymain>) at testutils.c:764
       #11 0x080491af in main (argc=1, argv=0xbfd4bb24) at virdbustest.c:393
      6b79a472
    • J
      Add inputpool to storagevolxml2argvtest · 601d4652
      Ján Tomko 提交于
      This allows testing the command line for cloning file-based
      volumes into logical volumes and vice versa.
      601d4652
    • J
      Move volume XMLs out of storagevolxml2argvdata · 3a75fca2
      Ján Tomko 提交于
      Reuse the XML files in storagevolxml2xmlin.
      
      (This requires changing a few backing files to /dev/null,
      since virStorageBackendCreateQemuImgCmd checks for its
      presence)
      3a75fca2