[Qemu-devel] [PULL v3 00/28] ivshmem deprecation, qtests, typedefs and gnu99

Thomas Huth posted 28 patches 6 years, 9 months ago
Only 3 patches received!
audio/audio_int.h           |   4 +-
block/iscsi.c               |   2 +
configure                   |   5 +-
docs/specs/ivshmem-spec.txt |   8 +-
hw/i386/pc_piix.c           |   1 -
hw/intc/xics_kvm.c          |   1 +
hw/intc/xics_spapr.c        |   1 +
hw/misc/ivshmem.c           | 210 +---------------------------
hw/ppc/spapr_irq.c          |   1 +
hw/virtio/vhost-user.c      |   2 +-
include/hw/arm/pxa.h        |   1 +
include/hw/char/serial.h    |   4 +-
include/hw/devices.h        |   1 +
include/hw/i2c/smbus.h      |   2 +
include/hw/i386/pc.h        |   4 +-
include/hw/ide/ahci.h       |   4 +-
include/hw/input/ps2.h      |   2 +
include/hw/pcmcia.h         |   4 +-
include/hw/ppc/spapr.h      |   5 +-
include/hw/ppc/spapr_xive.h |   2 -
include/hw/ppc/xics.h       |   7 -
include/hw/ppc/xics_spapr.h |  37 +++++
include/qemu/compiler.h     |   4 +
include/qemu/typedefs.h     |  13 --
include/sysemu/bt.h         |   4 +-
include/ui/console.h        |  24 ++--
include/ui/qemu-pixman.h    |  10 ++
linux-user/qemu.h           |   6 +-
qemu-deprecated.texi        |   5 -
qemu-seccomp.c              |   3 +-
scripts/device-crash-test   |   1 -
target/ppc/cpu.h            |   9 +-
tests/Makefile.include      |  22 +--
tests/boot-order-test.c     |  59 ++++----
tests/endianness-test.c     | 329 ++++++++++++++++++++++----------------------
tests/hexloader-test.c      |   2 +-
tests/ivshmem-test.c        |  67 ++++-----
tests/pnv-xscom-test.c      |  29 ++--
tests/vhost-user-test.c     |   2 +-
util/oslib-posix.c          |   8 +-
40 files changed, 361 insertions(+), 544 deletions(-)
create mode 100644 include/hw/ppc/xics_spapr.h
[Qemu-devel] [PULL v3 00/28] ivshmem deprecation, qtests, typedefs and gnu99
Posted by Thomas Huth 6 years, 9 months ago
 Hi Peter!

The following changes since commit 6f2f34177a25bffd6fd92a05e6e66c8d22d97094:

  Merge remote-tracking branch 'remotes/thibault/tags/samuel-thibault' into staging (2019-01-15 18:32:57 +0000)

are available in the git repository at:

  https://gitlab.com/huth/qemu.git tags/pull-request-2019-01-17

for you to fetch changes up to 3f0832c85380321ef697d64342b389648f8abb1c:

  tests/hexloader-test: Don't pass -nographic to the QEMU under test (2019-01-17 14:25:12 +0100)

----------------------------------------------------------------
- Remove deprecated "ivshmem" legacy device
- Bug fix for vhost-user-test
- Use more CONFIG Makefile switches for qtests
- Get rid of global_qtests in some more qtests
- typedef cleanups
- Fixes for compiling with Clang
- Force C standard to gnu99
----------------------------------------------------------------

Li Qiang (3):
      tests: vhost-user-test: initialize 'fd' in chr_read
      vhost-user: fix ioeventfd_enabled
      util: check the return value of fcntl in qemu_set_{block, nonblock}

Peter Maydell (1):
      tests/hexloader-test: Don't pass -nographic to the QEMU under test

Philippe Mathieu-Daudé (12):
      hw/input/ps2: Remove PS2State from "qemu/typedefs.h"
      hw/pcmcia: Remove PCMCIACardState from "qemu/typedefs.h"
      hw/ide/ahci: Remove AllwinnerAHCIState from "qemu/typedefs.h"
      hw/i2c/smbus: Remove SMBusDevice from "qemu/typedefs.h"
      hw/bt: Remove HCIInfo from "qemu/typedefs.h"
      hw/char/serial: Remove SerialState from "qemu/typedefs.h"
      hw/i386: Remove PCMachineClass from "qemu/typedefs.h"
      audio: Remove AudioState from "qemu/typedefs.h"
      ui/console: Remove QemuDmaBuf from "qemu/typedefs.h"
      ui/console: Remove DisplayState/DisplaySurface from "qemu/typedefs.h"
      ui/console: Remove MouseTransformInfo from qemu/typedefs.h
      ui/console: Remove PixelFormat from qemu/typedefs.h

Thomas Huth (12):
      hw/misc/ivshmem: Remove deprecated "ivshmem" legacy device
      tests/Makefile: Use some more CONFIG switches for x86 tests
      tests/Makefile: Use some more CONFIG switches for ppc tests
      tests/endianesss: Make test independent of global_qtest
      tests/boot-order: Make test independent of global_qtest
      tests/pnv-xscom: Make test independent of global_qtest
      ppc: Move spapr-related prototypes from xics.h into a seperate header file
      ppc: Fix duplicated typedefs to be able to compile with Clang in gnu99 mode
      linux-user: Fix compilation with clang 3.4
      block: Work-around a bug in libiscsi 1.9.0 when used in gnu99 mode
      seccomp: Work-around GCC 4.x bug in gnu99 mode
      configure: Force the C standard to gnu99

 audio/audio_int.h           |   4 +-
 block/iscsi.c               |   2 +
 configure                   |   5 +-
 docs/specs/ivshmem-spec.txt |   8 +-
 hw/i386/pc_piix.c           |   1 -
 hw/intc/xics_kvm.c          |   1 +
 hw/intc/xics_spapr.c        |   1 +
 hw/misc/ivshmem.c           | 210 +---------------------------
 hw/ppc/spapr_irq.c          |   1 +
 hw/virtio/vhost-user.c      |   2 +-
 include/hw/arm/pxa.h        |   1 +
 include/hw/char/serial.h    |   4 +-
 include/hw/devices.h        |   1 +
 include/hw/i2c/smbus.h      |   2 +
 include/hw/i386/pc.h        |   4 +-
 include/hw/ide/ahci.h       |   4 +-
 include/hw/input/ps2.h      |   2 +
 include/hw/pcmcia.h         |   4 +-
 include/hw/ppc/spapr.h      |   5 +-
 include/hw/ppc/spapr_xive.h |   2 -
 include/hw/ppc/xics.h       |   7 -
 include/hw/ppc/xics_spapr.h |  37 +++++
 include/qemu/compiler.h     |   4 +
 include/qemu/typedefs.h     |  13 --
 include/sysemu/bt.h         |   4 +-
 include/ui/console.h        |  24 ++--
 include/ui/qemu-pixman.h    |  10 ++
 linux-user/qemu.h           |   6 +-
 qemu-deprecated.texi        |   5 -
 qemu-seccomp.c              |   3 +-
 scripts/device-crash-test   |   1 -
 target/ppc/cpu.h            |   9 +-
 tests/Makefile.include      |  22 +--
 tests/boot-order-test.c     |  59 ++++----
 tests/endianness-test.c     | 329 ++++++++++++++++++++++----------------------
 tests/hexloader-test.c      |   2 +-
 tests/ivshmem-test.c        |  67 ++++-----
 tests/pnv-xscom-test.c      |  29 ++--
 tests/vhost-user-test.c     |   2 +-
 util/oslib-posix.c          |   8 +-
 40 files changed, 361 insertions(+), 544 deletions(-)
 create mode 100644 include/hw/ppc/xics_spapr.h

Re: [Qemu-devel] [PULL v3 00/28] ivshmem deprecation, qtests, typedefs and gnu99
Posted by Peter Maydell 6 years, 9 months ago
On Thu, 17 Jan 2019 at 13:38, Thomas Huth <thuth@redhat.com> wrote:
>
>  Hi Peter!
>
> The following changes since commit 6f2f34177a25bffd6fd92a05e6e66c8d22d97094:
>
>   Merge remote-tracking branch 'remotes/thibault/tags/samuel-thibault' into staging (2019-01-15 18:32:57 +0000)
>
> are available in the git repository at:
>
>   https://gitlab.com/huth/qemu.git tags/pull-request-2019-01-17
>
> for you to fetch changes up to 3f0832c85380321ef697d64342b389648f8abb1c:
>
>   tests/hexloader-test: Don't pass -nographic to the QEMU under test (2019-01-17 14:25:12 +0100)
>
> ----------------------------------------------------------------
> - Remove deprecated "ivshmem" legacy device
> - Bug fix for vhost-user-test
> - Use more CONFIG Makefile switches for qtests
> - Get rid of global_qtests in some more qtests
> - typedef cleanups
> - Fixes for compiling with Clang
> - Force C standard to gnu99
> ----------------------------------------------------------------

In the netbsd VM, the ipmi-bt-test is consistently failing:

MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
QTEST_QEMU_BINARY=i386-softmmu
/qemu-system-i386 QTEST_QEMU_IMG=qemu-img tests/ipmi-bt-test -m=quick
-k --tap < /dev/null | ./s
cripts/tap-driver.pl --test-name="ipmi-bt-test"
**
ERROR:tests/ipmi-bt-test.c:319:test_connect: assertion failed: (rv == 1)
ERROR - too few tests run (expected 4, got 0)
[1]   Abort trap (core dumped) MALLOC_PERTURB_=... |
      Done(1)                 ./scripts/tap-dr...
/var/tmp/qemu-test.7opHvo/tests/Makefile.include:856: recipe for
target 'check-qtest-i386' faile
d
gmake: *** [check-qtest-i386] Error 1
gmake: *** Waiting for unfinished jobs....


This has been kind of intermittent for a while, I've seen
it on-and-off, but with this pullreq it's failed four times
in a row, so maybe something in here is making it less
intermittent.

thanks
-- PMM

Re: [Qemu-devel] [PULL v3 00/28] ivshmem deprecation, qtests, typedefs and gnu99
Posted by Philippe Mathieu-Daudé 6 years, 9 months ago
On 1/18/19 12:47 PM, Peter Maydell wrote:
> On Thu, 17 Jan 2019 at 13:38, Thomas Huth <thuth@redhat.com> wrote:
>>
>>  Hi Peter!
>>
>> The following changes since commit 6f2f34177a25bffd6fd92a05e6e66c8d22d97094:
>>
>>   Merge remote-tracking branch 'remotes/thibault/tags/samuel-thibault' into staging (2019-01-15 18:32:57 +0000)
>>
>> are available in the git repository at:
>>
>>   https://gitlab.com/huth/qemu.git tags/pull-request-2019-01-17
>>
>> for you to fetch changes up to 3f0832c85380321ef697d64342b389648f8abb1c:
>>
>>   tests/hexloader-test: Don't pass -nographic to the QEMU under test (2019-01-17 14:25:12 +0100)
>>
>> ----------------------------------------------------------------
>> - Remove deprecated "ivshmem" legacy device
>> - Bug fix for vhost-user-test
>> - Use more CONFIG Makefile switches for qtests
>> - Get rid of global_qtests in some more qtests
>> - typedef cleanups
>> - Fixes for compiling with Clang
>> - Force C standard to gnu99
>> ----------------------------------------------------------------
> 
> In the netbsd VM, the ipmi-bt-test is consistently failing:
> 
> MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
> QTEST_QEMU_BINARY=i386-softmmu
> /qemu-system-i386 QTEST_QEMU_IMG=qemu-img tests/ipmi-bt-test -m=quick
> -k --tap < /dev/null | ./s
> cripts/tap-driver.pl --test-name="ipmi-bt-test"
> **
> ERROR:tests/ipmi-bt-test.c:319:test_connect: assertion failed: (rv == 1)
> ERROR - too few tests run (expected 4, got 0)
> [1]   Abort trap (core dumped) MALLOC_PERTURB_=... |
>       Done(1)                 ./scripts/tap-dr...
> /var/tmp/qemu-test.7opHvo/tests/Makefile.include:856: recipe for
> target 'check-qtest-i386' faile
> d
> gmake: *** [check-qtest-i386] Error 1
> gmake: *** Waiting for unfinished jobs....
> 
> 
> This has been kind of intermittent for a while, I've seen
> it on-and-off, but with this pullreq it's failed four times
> in a row, so maybe something in here is making it less
> intermittent.

This file does:

    qtest_add_func("/ipmi/extern/connect", test_connect);
    qtest_add_func("/ipmi/extern/bt_base", test_bt_base);
    qtest_add_func("/ipmi/extern/bt_enable_irq", test_enable_irq);
    qtest_add_func("/ipmi/extern/bt_base_irq", test_bt_base);
    ret = g_test_run();

The first "test" test_connect() binds emu_lfd, the 2nd test
test_bt_base() calls bt_cmd() which also use emu_lfd... could it be unbound?
This is racy, since (from g_test_run() doc):

"In general, the tests and sub-suites within each suite are run in the
order in which they are defined. [...]
However, you should never make the actual result of a test depend on the
order that tests are run in. If you need to ensure that some particular
code runs before or after a given test case, use g_test_add(), which
lets you specify setup and teardown functions."

Re: [Qemu-devel] [PULL v3 00/28] ivshmem deprecation, qtests, typedefs and gnu99
Posted by Philippe Mathieu-Daudé 6 years, 9 months ago
On Fri, Jan 18, 2019 at 2:15 PM Philippe Mathieu-Daudé
<philmd@redhat.com> wrote:
> On 1/18/19 12:47 PM, Peter Maydell wrote:
> > On Thu, 17 Jan 2019 at 13:38, Thomas Huth <thuth@redhat.com> wrote:
> >>
> >>  Hi Peter!
> >>
> >> The following changes since commit 6f2f34177a25bffd6fd92a05e6e66c8d22d97094:
> >>
> >>   Merge remote-tracking branch 'remotes/thibault/tags/samuel-thibault' into staging (2019-01-15 18:32:57 +0000)
> >>
> >> are available in the git repository at:
> >>
> >>   https://gitlab.com/huth/qemu.git tags/pull-request-2019-01-17
> >>
> >> for you to fetch changes up to 3f0832c85380321ef697d64342b389648f8abb1c:
> >>
> >>   tests/hexloader-test: Don't pass -nographic to the QEMU under test (2019-01-17 14:25:12 +0100)
> >>
> >> ----------------------------------------------------------------
> >> - Remove deprecated "ivshmem" legacy device
> >> - Bug fix for vhost-user-test
> >> - Use more CONFIG Makefile switches for qtests
> >> - Get rid of global_qtests in some more qtests
> >> - typedef cleanups
> >> - Fixes for compiling with Clang
> >> - Force C standard to gnu99
> >> ----------------------------------------------------------------
> >
> > In the netbsd VM, the ipmi-bt-test is consistently failing:
> >
> > MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
> > QTEST_QEMU_BINARY=i386-softmmu
> > /qemu-system-i386 QTEST_QEMU_IMG=qemu-img tests/ipmi-bt-test -m=quick
> > -k --tap < /dev/null | ./s
> > cripts/tap-driver.pl --test-name="ipmi-bt-test"
> > **
> > ERROR:tests/ipmi-bt-test.c:319:test_connect: assertion failed: (rv == 1)
> > ERROR - too few tests run (expected 4, got 0)
> > [1]   Abort trap (core dumped) MALLOC_PERTURB_=... |
> >       Done(1)                 ./scripts/tap-dr...
> > /var/tmp/qemu-test.7opHvo/tests/Makefile.include:856: recipe for
> > target 'check-qtest-i386' faile
> > d
> > gmake: *** [check-qtest-i386] Error 1
> > gmake: *** Waiting for unfinished jobs....
> >
> >
> > This has been kind of intermittent for a while, I've seen
> > it on-and-off, but with this pullreq it's failed four times
> > in a row, so maybe something in here is making it less
> > intermittent.
>
> This file does:
>
>     qtest_add_func("/ipmi/extern/connect", test_connect);
>     qtest_add_func("/ipmi/extern/bt_base", test_bt_base);
>     qtest_add_func("/ipmi/extern/bt_enable_irq", test_enable_irq);
>     qtest_add_func("/ipmi/extern/bt_base_irq", test_bt_base);
>     ret = g_test_run();
>
> The first "test" test_connect() binds emu_lfd, the 2nd test
> test_bt_base() calls bt_cmd() which also use emu_lfd... could it be unbound?

I meant 'emu_fd' (not emu_lfd) in both cases.

> This is racy, since (from g_test_run() doc):
>
> "In general, the tests and sub-suites within each suite are run in the
> order in which they are defined. [...]
> However, you should never make the actual result of a test depend on the
> order that tests are run in. If you need to ensure that some particular
> code runs before or after a given test case, use g_test_add(), which
> lets you specify setup and teardown functions."

Re: [Qemu-devel] [PULL v3 00/28] ivshmem deprecation, qtests, typedefs and gnu99
Posted by Peter Maydell 6 years, 9 months ago
On Fri, 18 Jan 2019 at 11:47, Peter Maydell <peter.maydell@linaro.org> wrote:
>
> On Thu, 17 Jan 2019 at 13:38, Thomas Huth <thuth@redhat.com> wrote:
> >
> >  Hi Peter!
> >
> > The following changes since commit 6f2f34177a25bffd6fd92a05e6e66c8d22d97094:
> >
> >   Merge remote-tracking branch 'remotes/thibault/tags/samuel-thibault' into staging (2019-01-15 18:32:57 +0000)
> >
> > are available in the git repository at:
> >
> >   https://gitlab.com/huth/qemu.git tags/pull-request-2019-01-17
> >
> > for you to fetch changes up to 3f0832c85380321ef697d64342b389648f8abb1c:
> >
> >   tests/hexloader-test: Don't pass -nographic to the QEMU under test (2019-01-17 14:25:12 +0100)
> >
> > ----------------------------------------------------------------
> > - Remove deprecated "ivshmem" legacy device
> > - Bug fix for vhost-user-test
> > - Use more CONFIG Makefile switches for qtests
> > - Get rid of global_qtests in some more qtests
> > - typedef cleanups
> > - Fixes for compiling with Clang
> > - Force C standard to gnu99
> > ----------------------------------------------------------------
>
> In the netbsd VM, the ipmi-bt-test is consistently failing:
>
> MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
> QTEST_QEMU_BINARY=i386-softmmu
> /qemu-system-i386 QTEST_QEMU_IMG=qemu-img tests/ipmi-bt-test -m=quick
> -k --tap < /dev/null | ./s
> cripts/tap-driver.pl --test-name="ipmi-bt-test"
> **
> ERROR:tests/ipmi-bt-test.c:319:test_connect: assertion failed: (rv == 1)
> ERROR - too few tests run (expected 4, got 0)
> [1]   Abort trap (core dumped) MALLOC_PERTURB_=... |
>       Done(1)                 ./scripts/tap-dr...
> /var/tmp/qemu-test.7opHvo/tests/Makefile.include:856: recipe for
> target 'check-qtest-i386' faile
> d
> gmake: *** [check-qtest-i386] Error 1
> gmake: *** Waiting for unfinished jobs....
>
>
> This has been kind of intermittent for a while, I've seen
> it on-and-off, but with this pullreq it's failed four times
> in a row, so maybe something in here is making it less
> intermittent.

I tried the "raise the timeout" change you suggested on IRC.
That gave me a pass the first time around but the same failure
second time I tried it:

MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
QTEST_QEMU_BINARY=i386-softmmu/qemu-system-i386
QTEST_QEMU_IMG=qemu-img tests/ipmi-bt-test -m=quick -k --tap <
/dev/null | ./scripts/tap-driver.pl --test-name="ipmi-bt-test"
**
ERROR:tests/ipmi-bt-test.c:319:test_connect: assertion failed: (rv == 1)
ERROR - too few tests run (expected 4, got 0)
[1]   Abort trap (core dumped) MALLOC_PERTURB_=... |
      Done(1)                 ./scripts/tap-dr...
/var/tmp/qemu-test.TATvqX/tests/Makefile.include:856: recipe for
target 'check-qtest-i386' failed



thanks
-- PMM

Re: [Qemu-devel] [PULL v3 00/28] ivshmem deprecation, qtests, typedefs and gnu99
Posted by Philippe Mathieu-Daudé 6 years, 9 months ago
On 1/18/19 3:20 PM, Peter Maydell wrote:
> On Fri, 18 Jan 2019 at 11:47, Peter Maydell <peter.maydell@linaro.org> wrote:
>>
>> On Thu, 17 Jan 2019 at 13:38, Thomas Huth <thuth@redhat.com> wrote:
>>>
>>>  Hi Peter!
>>>
>>> The following changes since commit 6f2f34177a25bffd6fd92a05e6e66c8d22d97094:
>>>
>>>   Merge remote-tracking branch 'remotes/thibault/tags/samuel-thibault' into staging (2019-01-15 18:32:57 +0000)
>>>
>>> are available in the git repository at:
>>>
>>>   https://gitlab.com/huth/qemu.git tags/pull-request-2019-01-17
>>>
>>> for you to fetch changes up to 3f0832c85380321ef697d64342b389648f8abb1c:
>>>
>>>   tests/hexloader-test: Don't pass -nographic to the QEMU under test (2019-01-17 14:25:12 +0100)
>>>
>>> ----------------------------------------------------------------
>>> - Remove deprecated "ivshmem" legacy device
>>> - Bug fix for vhost-user-test
>>> - Use more CONFIG Makefile switches for qtests
>>> - Get rid of global_qtests in some more qtests
>>> - typedef cleanups
>>> - Fixes for compiling with Clang
>>> - Force C standard to gnu99
>>> ----------------------------------------------------------------
>>
>> In the netbsd VM, the ipmi-bt-test is consistently failing:
>>
>> MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
>> QTEST_QEMU_BINARY=i386-softmmu
>> /qemu-system-i386 QTEST_QEMU_IMG=qemu-img tests/ipmi-bt-test -m=quick
>> -k --tap < /dev/null | ./s
>> cripts/tap-driver.pl --test-name="ipmi-bt-test"
>> **
>> ERROR:tests/ipmi-bt-test.c:319:test_connect: assertion failed: (rv == 1)
>> ERROR - too few tests run (expected 4, got 0)
>> [1]   Abort trap (core dumped) MALLOC_PERTURB_=... |
>>       Done(1)                 ./scripts/tap-dr...
>> /var/tmp/qemu-test.7opHvo/tests/Makefile.include:856: recipe for
>> target 'check-qtest-i386' faile
>> d
>> gmake: *** [check-qtest-i386] Error 1
>> gmake: *** Waiting for unfinished jobs....
>>
>>
>> This has been kind of intermittent for a while, I've seen
>> it on-and-off, but with this pullreq it's failed four times
>> in a row, so maybe something in here is making it less
>> intermittent.
> 
> I tried the "raise the timeout" change you suggested on IRC.
> That gave me a pass the first time around but the same failure
> second time I tried it:
> 
> MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
> QTEST_QEMU_BINARY=i386-softmmu/qemu-system-i386
> QTEST_QEMU_IMG=qemu-img tests/ipmi-bt-test -m=quick -k --tap <
> /dev/null | ./scripts/tap-driver.pl --test-name="ipmi-bt-test"
> **
> ERROR:tests/ipmi-bt-test.c:319:test_connect: assertion failed: (rv == 1)
> ERROR - too few tests run (expected 4, got 0)
> [1]   Abort trap (core dumped) MALLOC_PERTURB_=... |
>       Done(1)                 ./scripts/tap-dr...
> /var/tmp/qemu-test.TATvqX/tests/Makefile.include:856: recipe for
> target 'check-qtest-i386' failed

I guess I finally figured it out, the test binds IPv4 and on the NetBSD
VM, 'localhost' resolves as IPv6 so the guest can't connect to the test.

I'm not sure what's the best way to fix this (yet), meanwhile the tests
succeed using:

-- >8 --
     global_qtest = qtest_initf(
-        " -chardev socket,id=ipmi0,host=localhost,port=%d,reconnect=10"
+        " -chardev socket,id=ipmi0,host=127.0.0.1,port=%d,reconnect=10"
         " -device ipmi-bmc-extern,chardev=ipmi0,id=bmc0"
---

Regards,

Phil.

Re: [Qemu-devel] [PULL v3 00/28] ivshmem deprecation, qtests, typedefs and gnu99
Posted by Peter Maydell 6 years, 9 months ago
On Fri, 18 Jan 2019 at 18:26, Philippe Mathieu-Daudé <philmd@redhat.com> wrote:
>
> On 1/18/19 3:20 PM, Peter Maydell wrote:
> > I tried the "raise the timeout" change you suggested on IRC.
> > That gave me a pass the first time around but the same failure
> > second time I tried it:
> >
> > MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
> > QTEST_QEMU_BINARY=i386-softmmu/qemu-system-i386
> > QTEST_QEMU_IMG=qemu-img tests/ipmi-bt-test -m=quick -k --tap <
> > /dev/null | ./scripts/tap-driver.pl --test-name="ipmi-bt-test"
> > **
> > ERROR:tests/ipmi-bt-test.c:319:test_connect: assertion failed: (rv == 1)
> > ERROR - too few tests run (expected 4, got 0)
> > [1]   Abort trap (core dumped) MALLOC_PERTURB_=... |
> >       Done(1)                 ./scripts/tap-dr...
> > /var/tmp/qemu-test.TATvqX/tests/Makefile.include:856: recipe for
> > target 'check-qtest-i386' failed
>
> I guess I finally figured it out, the test binds IPv4 and on the NetBSD
> VM, 'localhost' resolves as IPv6 so the guest can't connect to the test.

This theory doesn't explain why the test sometimes passes and
sometimes fails, though...

thanks
-- PMM

Re: [Qemu-devel] [PULL v3 00/28] ivshmem deprecation, qtests, typedefs and gnu99
Posted by Peter Maydell 6 years, 9 months ago
On Thu, 17 Jan 2019 at 13:38, Thomas Huth <thuth@redhat.com> wrote:
>
>  Hi Peter!
>
> The following changes since commit 6f2f34177a25bffd6fd92a05e6e66c8d22d97094:
>
>   Merge remote-tracking branch 'remotes/thibault/tags/samuel-thibault' into staging (2019-01-15 18:32:57 +0000)
>
> are available in the git repository at:
>
>   https://gitlab.com/huth/qemu.git tags/pull-request-2019-01-17
>
> for you to fetch changes up to 3f0832c85380321ef697d64342b389648f8abb1c:
>
>   tests/hexloader-test: Don't pass -nographic to the QEMU under test (2019-01-17 14:25:12 +0100)
>
> ----------------------------------------------------------------
> - Remove deprecated "ivshmem" legacy device
> - Bug fix for vhost-user-test
> - Use more CONFIG Makefile switches for qtests
> - Get rid of global_qtests in some more qtests
> - typedef cleanups
> - Fixes for compiling with Clang
> - Force C standard to gnu99
> ----------------------------------------------------------------

I gave this another run now the ipmi-bt test has been
disabled. It gets this compile failure on clang builds:

In file included from
/home/petmay01/linaro/qemu-for-merges/hw/net/vhost_net.c:21:
/home/petmay01/linaro/qemu-for-merges/include/hw/virtio/virtio-net.h:189:3:
error: redefinition of typedef 'VirtIONet' is a C11 feature
[-Werror,-Wtypedef-redefinition]
} VirtIONet;
  ^
/home/petmay01/linaro/qemu-for-merges/include/hw/virtio/virtio-net.h:110:26:
note: previous definition is here
typedef struct VirtIONet VirtIONet;
                         ^
1 error generated.

thanks
-- PMM

Re: [Qemu-devel] [PULL v3 00/28] ivshmem deprecation, qtests, typedefs and gnu99
Posted by Philippe Mathieu-Daudé 6 years, 9 months ago
On 1/21/19 3:43 PM, Peter Maydell wrote:
> On Thu, 17 Jan 2019 at 13:38, Thomas Huth <thuth@redhat.com> wrote:
>>
>>  Hi Peter!
>>
>> The following changes since commit 6f2f34177a25bffd6fd92a05e6e66c8d22d97094:
>>
>>   Merge remote-tracking branch 'remotes/thibault/tags/samuel-thibault' into staging (2019-01-15 18:32:57 +0000)
>>
>> are available in the git repository at:
>>
>>   https://gitlab.com/huth/qemu.git tags/pull-request-2019-01-17
>>
>> for you to fetch changes up to 3f0832c85380321ef697d64342b389648f8abb1c:
>>
>>   tests/hexloader-test: Don't pass -nographic to the QEMU under test (2019-01-17 14:25:12 +0100)
>>
>> ----------------------------------------------------------------
>> - Remove deprecated "ivshmem" legacy device
>> - Bug fix for vhost-user-test
>> - Use more CONFIG Makefile switches for qtests
>> - Get rid of global_qtests in some more qtests
>> - typedef cleanups
>> - Fixes for compiling with Clang
>> - Force C standard to gnu99
>> ----------------------------------------------------------------
> 
> I gave this another run now the ipmi-bt test has been
> disabled. It gets this compile failure on clang builds:
> 
> In file included from
> /home/petmay01/linaro/qemu-for-merges/hw/net/vhost_net.c:21:
> /home/petmay01/linaro/qemu-for-merges/include/hw/virtio/virtio-net.h:189:3:
> error: redefinition of typedef 'VirtIONet' is a C11 feature
> [-Werror,-Wtypedef-redefinition]
> } VirtIONet;

Oh this got introduced by 2974e916df8:
"virtio-net: support RSC v4/v6 tcp traffic for Windows HCK".

Thomas I'm afraid you'll have to rebase and add a new fix :/

>   ^
> /home/petmay01/linaro/qemu-for-merges/include/hw/virtio/virtio-net.h:110:26:
> note: previous definition is here
> typedef struct VirtIONet VirtIONet;
>                          ^
> 1 error generated.
> 
> thanks
> -- PMM
> 

Re: [Qemu-devel] [PULL v3 00/28] ivshmem deprecation, qtests, typedefs and gnu99
Posted by Philippe Mathieu-Daudé 6 years, 9 months ago
On 1/21/19 6:42 PM, Philippe Mathieu-Daudé wrote:
> On 1/21/19 3:43 PM, Peter Maydell wrote:
>> On Thu, 17 Jan 2019 at 13:38, Thomas Huth <thuth@redhat.com> wrote:
>>>
>>>  Hi Peter!
>>>
>>> The following changes since commit 6f2f34177a25bffd6fd92a05e6e66c8d22d97094:
>>>
>>>   Merge remote-tracking branch 'remotes/thibault/tags/samuel-thibault' into staging (2019-01-15 18:32:57 +0000)
>>>
>>> are available in the git repository at:
>>>
>>>   https://gitlab.com/huth/qemu.git tags/pull-request-2019-01-17
>>>
>>> for you to fetch changes up to 3f0832c85380321ef697d64342b389648f8abb1c:
>>>
>>>   tests/hexloader-test: Don't pass -nographic to the QEMU under test (2019-01-17 14:25:12 +0100)
>>>
>>> ----------------------------------------------------------------
>>> - Remove deprecated "ivshmem" legacy device
>>> - Bug fix for vhost-user-test
>>> - Use more CONFIG Makefile switches for qtests
>>> - Get rid of global_qtests in some more qtests
>>> - typedef cleanups
>>> - Fixes for compiling with Clang
>>> - Force C standard to gnu99
>>> ----------------------------------------------------------------
>>
>> I gave this another run now the ipmi-bt test has been
>> disabled. It gets this compile failure on clang builds:
>>
>> In file included from
>> /home/petmay01/linaro/qemu-for-merges/hw/net/vhost_net.c:21:
>> /home/petmay01/linaro/qemu-for-merges/include/hw/virtio/virtio-net.h:189:3:
>> error: redefinition of typedef 'VirtIONet' is a C11 feature
>> [-Werror,-Wtypedef-redefinition]
>> } VirtIONet;
> 
> Oh this got introduced by 2974e916df8:
> "virtio-net: support RSC v4/v6 tcp traffic for Windows HCK".
> 
> Thomas I'm afraid you'll have to rebase and add a new fix :/

Fix sent here:
https://www.mail-archive.com/qemu-devel@nongnu.org/msg589185.html

>>   ^
>> /home/petmay01/linaro/qemu-for-merges/include/hw/virtio/virtio-net.h:110:26:
>> note: previous definition is here
>> typedef struct VirtIONet VirtIONet;
>>                          ^
>> 1 error generated.
>>
>> thanks
>> -- PMM
>>