qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH 0/4] async: fix hangs on weakly-ordered architectures
@ 2020-04-07 14:07 Paolo Bonzini
  2020-04-07 14:07 ` [PATCH 1/5] atomics: convert to reStructuredText Paolo Bonzini
                   ` (6 more replies)
  0 siblings, 7 replies; 17+ messages in thread
From: Paolo Bonzini @ 2020-04-07 14:07 UTC (permalink / raw)
  To: qemu-devel; +Cc: fangying1, stefanha

ARM machines and other weakly-ordered architectures have been suffering
for a long time from hangs in qemu-img and qemu-io.  For QEMU binaries
these are mitigated by the timers that sooner or later fire in the main
loop, but these will not happen for the tools and probably not with I/O
threads either.

The fix is in patch 5.  Patch 1-3 are docs updates that explain the bug,
and patch 4 is a bugfix exposed by the new patch.

Paolo

Paolo Bonzini (5):
  atomics: convert to reStructuredText
  atomics: update documentation
  rcu: do not mention atomic_mb_read/set in documentation
  aio-wait: delegate polling of main AioContext if BQL not held
  async: use explicit memory barriers

 docs/devel/atomics.rst   | 501 +++++++++++++++++++++++++++++++++++++++
 docs/devel/atomics.txt   | 403 -------------------------------
 docs/devel/index.rst     |   1 +
 docs/devel/rcu.txt       |   4 +-
 include/block/aio-wait.h |  22 ++
 include/block/aio.h      |  29 +--
 util/aio-posix.c         |  16 +-
 util/aio-win32.c         |  17 +-
 util/async.c             |  16 +-
 9 files changed, 576 insertions(+), 433 deletions(-)
 create mode 100644 docs/devel/atomics.rst
 delete mode 100644 docs/devel/atomics.txt

-- 
2.18.2



^ permalink raw reply	[flat|nested] 17+ messages in thread
* [RFC PATCH 0/4] async: fix hangs on weakly-ordered architectures
@ 2020-04-06 19:13 Paolo Bonzini
  2020-04-07  9:10 ` Stefan Hajnoczi
  0 siblings, 1 reply; 17+ messages in thread
From: Paolo Bonzini @ 2020-04-06 19:13 UTC (permalink / raw)
  To: qemu-devel; +Cc: Ying Fang, stefanha

Patch 4 fixes qemu-img and qemu-io hangs on weakly-ordered architectures.
Patch 1-3 are related docs fixes and improvements.

This is RFC because it relies on the iothread being locked during aio_poll
on the main AioContext.  If I add assertions for this however I see a
failure for test 267, so I am posting it as a preview before I debug that.
The doc patches can also go in independently of course.

Paolo

Paolo Bonzini (4):
  atomics: convert to reStructuredText
  atomics: update documentation for C11
  rcu: do not mention atomic_mb_read/set in documentation
  async: use explicit memory barriers

 docs/devel/atomics.rst | 385 +++++++++++++++++++++++++++++++++++++++
 docs/devel/atomics.txt | 403 -----------------------------------------
 docs/devel/index.rst   |   1 +
 docs/devel/rcu.txt     |   4 +-
 util/aio-posix.c       |   9 +-
 util/aio-win32.c       |   8 +-
 util/async.c           |  12 +-
 7 files changed, 413 insertions(+), 409 deletions(-)
 create mode 100644 docs/devel/atomics.rst
 delete mode 100644 docs/devel/atomics.txt

-- 
2.18.2



^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2020-04-09 15:18 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-04-07 14:07 [RFC PATCH 0/4] async: fix hangs on weakly-ordered architectures Paolo Bonzini
2020-04-07 14:07 ` [PATCH 1/5] atomics: convert to reStructuredText Paolo Bonzini
2020-04-07 16:49   ` Alex Bennée
2020-04-07 14:07 ` [PATCH 2/5] atomics: update documentation Paolo Bonzini
2020-04-07 15:25   ` Richard Henderson
2020-04-07 15:52     ` Paolo Bonzini
2020-04-07 14:07 ` [PATCH 3/5] rcu: do not mention atomic_mb_read/set in documentation Paolo Bonzini
2020-04-07 17:19   ` Richard Henderson
2020-04-07 14:07 ` [PATCH 4/5] aio-wait: delegate polling of main AioContext if BQL not held Paolo Bonzini
2020-04-07 14:07 ` [PATCH 5/5] async: use explicit memory barriers Paolo Bonzini
2020-04-09  6:22   ` Ying Fang
2020-04-08  9:12 ` [RFC PATCH 0/4] async: fix hangs on weakly-ordered architectures Ying Fang
2020-04-08 15:05   ` Paolo Bonzini
2020-04-09  6:54     ` Ying Fang
2020-04-09 15:17 ` Stefan Hajnoczi
  -- strict thread matches above, loose matches on Subject: below --
2020-04-06 19:13 Paolo Bonzini
2020-04-07  9:10 ` Stefan Hajnoczi

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).