archive mirror
 help / color / mirror / Atom feed
* [PATCHSET 0/5] io-wq fixes
@ 2021-09-02 19:25 Jens Axboe
  2021-09-02 19:25 ` [PATCH 1/5] io-wq: fix queue stalling race Jens Axboe
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Jens Axboe @ 2021-09-02 19:25 UTC (permalink / raw)
  To: io-uring


Got a report on io-wq stalls, and it turned into quite the rabbit hole
of fixes. There are two main things fixed by this series:

1) Single ring that has a lot of bounded vs unbounded traffic. The fix
   is mainly just splitting the bounded and unbounded lists, so that we
   never stall bounded unnecessarily. There are further cleanups possible
   on top of this, but that should be deferred to 5.16.

2) Workloads that have io-wq work and rely heavily on signaling to
   communicate between processes/threads. This can interfere with worker
   creation, and this is particularly troublesome if it just happens to
   occur with the first worker creation.

In general, harden the worker creation and ensure we handle failures in
terms of allocations and worker creations.

Jens Axboe

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

end of thread, other threads:[~2021-09-02 19:25 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-02 19:25 [PATCHSET 0/5] io-wq fixes Jens Axboe
2021-09-02 19:25 ` [PATCH 1/5] io-wq: fix queue stalling race Jens Axboe
2021-09-02 19:25 ` [PATCH 2/5] io-wq: split bounded and unbounded work into separate lists Jens Axboe
2021-09-02 19:25 ` [PATCH 3/5] io-wq: only exit on fatal signals Jens Axboe
2021-09-02 19:25 ` [PATCH 4/5] io-wq: get rid of FIXED worker flag Jens Axboe
2021-09-02 19:25 ` [PATCH 5/5] io-wq: make worker creation resilient against signals Jens Axboe

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