[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PULL 0/1] Block patches
From: |
Stefan Hajnoczi |
Subject: |
Re: [PULL 0/1] Block patches |
Date: |
Mon, 25 Oct 2021 11:10:07 +0100 |
On Thu, Oct 21, 2021 at 03:08:56PM -0700, Richard Henderson wrote:
> On 10/21/21 10:41 AM, Stefan Hajnoczi wrote:
> > The following changes since commit afc9fcde55296b83f659de9da3cdf044812a6eeb:
> >
> > Merge remote-tracking branch 'remotes/mst/tags/for_upstream' into
> > staging (2021-10-20 06:10:51 -0700)
> >
> > are available in the Git repository at:
> >
> > https://gitlab.com/stefanha/qemu.git tags/block-pull-request
> >
> > for you to fetch changes up to 4b2b3d2653f255ef4259a7689af1956536565901:
> >
> > coroutine: resize pool periodically instead of limiting size (2021-10-21
> > 18:40:07 +0100)
> >
> > ----------------------------------------------------------------
> > Pull request
> >
> > Performance optimization when guest applications submit a lot of parallel
> > I/O.
> > This has also been found to improve clang SafeStack performance.
> >
> > ----------------------------------------------------------------
> >
> > Stefan Hajnoczi (1):
> > coroutine: resize pool periodically instead of limiting size
> >
> > include/qemu/coroutine-pool-timer.h | 36 ++++++++++++++++
> > include/qemu/coroutine.h | 7 ++++
> > iothread.c | 6 +++
> > util/coroutine-pool-timer.c | 35 ++++++++++++++++
> > util/main-loop.c | 5 +++
> > util/qemu-coroutine.c | 64 ++++++++++++++++-------------
> > util/meson.build | 1 +
> > 7 files changed, 125 insertions(+), 29 deletions(-)
> > create mode 100644 include/qemu/coroutine-pool-timer.h
> > create mode 100644 util/coroutine-pool-timer.c
>
> This is causing
>
> (001/170) tests/acceptance/boot_linux.py:BootLinuxX8664.test_pc_i440fx_tcg:
> INTERRUPTED: Test interrupted by SIGTERM\nRunner error occurred: Timeout
> reached\nOriginal status: ERROR\n{'name':
> '001-tests/acceptance/boot_linux.py:BootLinuxX8664.test_pc_i440fx_tcg',
> 'logdir':
> '/home/richard.henderson/qemu/bld/tests/results/job-2021-10-21T20.58-ae0f6...
> (900.15 s)
> (002/170) tests/acceptance/boot_linux.py:BootLinuxX8664.test_pc_i440fx_kvm:
> INTERRUPTED: Test interrupted by SIGTERM\nRunner error occurred: Timeout
> reached\nOriginal status: ERROR\n{'name':
> '002-tests/acceptance/boot_linux.py:BootLinuxX8664.test_pc_i440fx_kvm',
> 'logdir':
> '/home/richard.henderson/qemu/bld/tests/results/job-2021-10-21T20.58-ae0f6...
> (900.23 s)
>
> I initially though this was just gitlab, but it reliably happens on my local
> machine as well.
Thanks, the coroutine pool timer commit in this pull request is broken.
Coroutines are created in one thread and then destroyed in another, so
the thread-local book keeping that assumed coroutines live in a single
thread was getting out of sync.
I will drop this pull request for now.
Stefan
signature.asc
Description: PGP signature