qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Juan Quintela <quintela@redhat.com>
To: Richard Henderson <richard.henderson@linaro.org>
Cc: qemu-devel@nongnu.org,  Peter Xu <peterx@redhat.com>,
	 Paolo Bonzini <pbonzini@redhat.com>,
	 Stefan Hajnoczi <stefanha@redhat.com>,
	 Thomas Huth <thuth@redhat.com>,
	 Laurent Vivier <lvivier@redhat.com>,
	 Eric Blake <eblake@redhat.com>,  Fam Zheng <fam@euphon.net>,
	 Leonardo Bras <leobras@redhat.com>,
	 Markus Armbruster <armbru@redhat.com>,
	qemu-block@nongnu.org
Subject: Re: [PULL 00/30] Next patches
Date: Mon, 26 Jun 2023 15:05:09 +0200	[thread overview]
Message-ID: <874jmue5mi.fsf@secure.mitica> (raw)
In-Reply-To: <a614493f-1e3e-1d6b-13df-702be2b1bd8e@linaro.org> (Richard Henderson's message of "Mon, 26 Jun 2023 08:37:10 +0200")

Richard Henderson <richard.henderson@linaro.org> wrote:
> On 6/26/23 00:01, Juan Quintela wrote:
>> Richard Henderson <richard.henderson@linaro.org> wrote:
>>> On 6/22/23 18:54, Juan Quintela wrote:
>>>> The following changes since commit b455ce4c2f300c8ba47cba7232dd03261368a4cb:
>>>>     Merge tag 'q800-for-8.1-pull-request'
>>>> ofhttps://github.com/vivier/qemu-m68k  into staging (2023-06-22
>>>> 10:18:32 +0200)
>>>> are available in the Git repository at:
>>>>     https://gitlab.com/juan.quintela/qemu.git  tags/next-pull-request
>>>> for you to fetch changes up to
>>>> 23e4307eadc1497bd0a11ca91041768f15963b68:
>>>>     migration/rdma: Split qemu_fopen_rdma() into input/output
>>>> functions (2023-06-22 18:11:58 +0200)
>>>> ----------------------------------------------------------------
>>>> Migration Pull request (20230621) take 2
>>>> In this pull request the only change is fixing 32 bits complitaion
>>>> issue.
>>>> Please apply.
>>>> [take 1]
>>>> - fix for multifd thread creation (fabiano)
>>>> - dirtylimity (hyman)
>>>>     * migration-test will go on next PULL request, as it has failures.
>>>> - Improve error description (tejus)
>>>> - improve -incoming and set parameters before calling incoming (wei)
>>>> - migration atomic counters reviewed patches (quintela)
>>>> - migration-test refacttoring reviewed (quintela)
>>>
>>> New failure with check-cfi-x86_64:
>>>
>>> https://gitlab.com/qemu-project/qemu/-/jobs/4527202764#L188
>> First of all, is there a way to get to the test log?  In particular,
>> I
>> am interested in knowing at least what test has failed (yes,
>> migration-test don't tell you much more).
>> After a bit more wrestling, I have been able to get things compiling
>> with this command:
>> $ /mnt/code/qemu/full/configure --enable-cfi
>> --target-list=x86_64-softmmu --enable-cfi-debug --cc=clang --cxx=clang++
>> --disable-docs --enable-safe-stack --disable-slirp
>> It should basically be the one that check-cfi-x86_64 is using if I
>> understand the build recipes correctly (that is a BIG IF).
>> And it passes for me with flying colors.
>> Here I have Fedora38, builder has F37.
>> 
>>> /builds/qemu-project/qemu/build/pyvenv/bin/meson test  --no-rebuild -t
>>> 0  --num-processes 1 --print-errorlogs
>>>    1/350 qemu:qtest+qtest-x86_64 / qtest-x86_64/qom-test
>>>    OK 6.55s   8 subtests passed
>>> ▶   2/350 ERROR:../tests/qtest/migration-test.c:320:check_guests_ram:
>>> assertion failed: (bad == 0) ERROR
>>>    2/350 qemu:qtest+qtest-x86_64 / qtest-x86_64/migration-test
>>>    ERROR 151.99s   killed by signal 6 SIGABRT
>>>>>>
>>>      G_TEST_DBUS_DAEMON=/builds/qemu-project/qemu/tests/dbus-vmstate-daemon.sh
>>>      MALLOC_PERTURB_=3 QTEST_QEMU_IMG=./qemu-img
>>>      QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon
>>>      QTEST_QEMU_BINARY=./qemu-system-x86_64
>>>      /builds/qemu-project/qemu/build/tests/qtest/migration-test --tap
>>>     -k
>>> ――――――――――――――――――――――――――――――――――――― ✀  ―――――――――――――――――――――――――――――――――――――
>>> stderr:
>>> qemu-system-x86_64: Unable to read from socket: Connection reset by peer
>> This is the interesting bit, why is the conection closed.
>> 
>>> Memory content inconsistency at 4f65000 first_byte = 30 last_byte = 2f
>>> current = 88 hit_edge = 1
>>> **
>>> ERROR:../tests/qtest/migration-test.c:320:check_guests_ram: assertion failed: (bad == 0)
>>>
>>> (test program exited with status code -6)
>> This makes zero sense, except if we haven't migrated all the guest
>> state, that it is what it has happened.
>> Is there a place on the web interface to see the full logs?  Or that
>> is
>> the only thing that the CI system stores?
>
> The "full logs" are
>
> https://gitlab.com/qemu-project/qemu/-/jobs/4527202764/artifacts/download?file_type=trace

Not useful.  I was hoping that there is something like when one runs
./tests/qtest/migration-test

Anyways, to make things faster:

- created
  /mnt/code/qemu/full/configure --enable-cfi
    --target-list=x86_64-softmmu --enable-cfi-debug --cc=clang --cxx=clang++
    --disable-docs --enable-safe-stack --disable-slirp

  worked as a charm.

- Your test run:

   qemu-system-x86_64: Unable to read from socket: Connection reset by peer
   one of the sides die, so anything else after that don't matter.

  And I don't understand what CFI is (and I don't rule out that
  posibility) or I can't understand how checking indirect functions call
  can make migration-test die without a single CFI error message?

- I tried myself CI pipeline, some exact source:

  https://gitlab.com/juan.quintela/qemu/-/commit/23e4307eadc1497bd0a11ca91041768f15963b68/pipelines?ref=sent%2Fmigration-20230621b

This is what fails:

https://gitlab.com/juan.quintela/qemu/-/jobs/4527782025
16/395 ERROR:../tests/qtest/qos-test.c:191:subprocess_run_one_test: child process (/x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-net-pci/virtio-net/virtio-net-tests/vhost-user/reconnect/subprocess [4569]) failed unexpectedly ERROR         
 16/395 qemu:qtest+qtest-x86_64 / qtest-x86_64/qos-test                    ERROR          27.46s   killed by signal 6 SIGABRT
>>> MALLOC_PERTURB_=92 QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon QTEST_QEMU_BINARY=./qemu-system-x86_64 QTEST_QEMU_IMG=./qemu-img G_TEST_DBUS_DAEMON=/builds/juan.quintela/qemu/tests/dbus-vmstate-daemon.sh /builds/juan.quintela/qemu/build/tests/qtest/qos-test --tap -k
――――――――――――――――――――――――――――――――――――― ✀  ―――――――――――――――――――――――――――――――――――――
stderr:
Vhost user backend fails to broadcast fake RARP
qemu-system-x86_64: -chardev socket,id=chr-reconnect,path=/tmp/vhost-test-8XUX61/reconnect.sock,server=on: info: QEMU waiting for connection on: disconnected:unix:/tmp/vhost-test-8XUX61/reconnect.sock,server=on
qemu-system-x86_64: Failed to set msg fds.
qemu-system-x86_64: vhost VQ 0 ring restore failed: -22: Invalid argument (22)
qemu-system-x86_64: Failed to set msg fds.
qemu-system-x86_64: vhost VQ 1 ring restore failed: -22: Invalid argument (22)
**
ERROR:../tests/qtest/vhost-user-test.c:890:wait_for_rings_started: assertion failed (ctpop64(s->rings) == count): (1 == 2)
**
ERROR:../tests/qtest/qos-test.c:191:subprocess_run_one_test: child
process
(/x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-net-pci/virtio-net/virtio-net-tests/vhost-user/reconnect/subprocess
[4569]) failed unexpectedly

vhost?  virtio-queue?  in a non migration test?

I don't know what is going on, but this is weird.

Do we have a way to run on that image:

./tests/qtest/migration-test

in a loop until it fails, and at least see what test is failing?

Later, Juan.



  reply	other threads:[~2023-06-26 13:05 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-22 16:54 [PULL 00/30] Next patches Juan Quintela
2023-06-22 16:54 ` [PULL 01/30] migration/multifd: Rename threadinfo.c functions Juan Quintela
2023-06-22 16:54 ` [PULL 02/30] migration/multifd: Protect accesses to migration_threads Juan Quintela
2023-06-22 16:55 ` [PULL 03/30] softmmu/dirtylimit: Add parameter check for hmp "set_vcpu_dirty_limit" Juan Quintela
2023-06-22 16:55 ` [PULL 04/30] qapi/migration: Introduce x-vcpu-dirty-limit-period parameter Juan Quintela
2023-06-22 16:55 ` [PULL 05/30] qapi/migration: Introduce vcpu-dirty-limit parameters Juan Quintela
2023-06-22 16:55 ` [PULL 06/30] migration: Introduce dirty-limit capability Juan Quintela
2023-06-22 16:55 ` [PULL 07/30] migration: Refactor auto-converge capability logic Juan Quintela
2023-06-22 16:55 ` [PULL 08/30] migration: Put the detection logic before auto-converge checking Juan Quintela
2023-06-22 16:55 ` [PULL 09/30] migration: Implement dirty-limit convergence algo Juan Quintela
2023-06-22 16:55 ` [PULL 10/30] migration: Extend query-migrate to provide dirty page limit info Juan Quintela
2023-06-22 16:55 ` [PULL 11/30] migration-test: Be consistent for ppc Juan Quintela
2023-06-22 16:55 ` [PULL 12/30] migration-test: Make machine_opts regular with other options Juan Quintela
2023-06-22 16:55 ` [PULL 13/30] migration-test: Create arch_opts Juan Quintela
2023-06-22 16:55 ` [PULL 14/30] migration-test: machine_opts is really arch specific Juan Quintela
2023-06-22 16:55 ` [PULL 15/30] migration-test: Create kvm_opts Juan Quintela
2023-06-22 16:55 ` [PULL 16/30] migration-test: bootpath is the same for all tests and for all archs Juan Quintela
2023-06-22 16:55 ` [PULL 17/30] migration-test: Add bootfile_create/delete() functions Juan Quintela
2023-06-22 16:55 ` [PULL 18/30] migration-test: dirtylimit checks for x86_64 arch before Juan Quintela
2023-06-22 16:55 ` [PULL 19/30] migration-test: simplify shmem_opts handling Juan Quintela
2023-06-22 16:55 ` [PULL 20/30] migration: Update error description whenever migration fails Juan Quintela
2023-06-22 16:55 ` [PULL 21/30] migration: Refactor repeated call of yank_unregister_instance Juan Quintela
2023-07-27  8:28   ` Tejus GK
2023-06-22 16:55 ` [PULL 22/30] migration: enforce multifd and postcopy preempt to be set before incoming Juan Quintela
2023-06-22 16:55 ` [PULL 23/30] qtest/migration-tests.c: use "-incoming defer" for postcopy tests Juan Quintela
2023-06-22 16:55 ` [PULL 24/30] qemu-file: Rename qemu_file_transferred_ fast -> noflush Juan Quintela
2023-06-22 16:55 ` [PULL 25/30] migration: Change qemu_file_transferred to noflush Juan Quintela
2023-06-22 16:55 ` [PULL 26/30] migration: Use qemu_file_transferred_noflush() for block migration Juan Quintela
2023-06-22 16:55 ` [PULL 27/30] qemu_file: Make qemu_file_is_writable() static Juan Quintela
2023-06-22 16:55 ` [PULL 28/30] qemu-file: Simplify qemu_file_shutdown() Juan Quintela
2023-06-22 16:55 ` [PULL 29/30] qemu-file: Make qemu_file_get_error_obj() static Juan Quintela
2023-06-22 16:55 ` [PULL 30/30] migration/rdma: Split qemu_fopen_rdma() into input/output functions Juan Quintela
2023-06-23  5:45 ` [PULL 00/30] Next patches Richard Henderson
2023-06-23  7:34   ` Juan Quintela
2023-06-25 22:01   ` Juan Quintela
2023-06-26  6:37     ` Richard Henderson
2023-06-26 13:05       ` Juan Quintela [this message]
2023-06-26 13:29         ` Richard Henderson
2023-06-26 13:09   ` Juan Quintela
2023-06-27  9:07   ` Juan Quintela
  -- strict thread matches above, loose matches on Subject: below --
2023-06-22  2:12 Juan Quintela
2023-06-22  5:38 ` Richard Henderson
2023-06-22  7:31   ` Juan Quintela
2022-11-15 15:34 Juan Quintela
2022-11-15 18:06 ` Daniel P. Berrangé
2022-11-15 18:57 ` Stefan Hajnoczi
2022-11-16 15:35   ` Xu, Ling1
2022-11-15 18:59 ` Stefan Hajnoczi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=874jmue5mi.fsf@secure.mitica \
    --to=quintela@redhat.com \
    --cc=armbru@redhat.com \
    --cc=eblake@redhat.com \
    --cc=fam@euphon.net \
    --cc=leobras@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peterx@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=stefanha@redhat.com \
    --cc=thuth@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).