All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/7] fuse: {io-uring} Allow to reduce the number of queues and request distribution
@ 2026-05-28 22:55 ` Bernd Schubert
  0 siblings, 0 replies; 21+ messages in thread
From: Bernd Schubert via B4 Relay @ 2026-05-28 22:55 UTC (permalink / raw)
  To: Miklos Szeredi
  Cc: Joanne Koong, Luis Henriques, Gang He, fuse-devel, Bernd Schubert,
	Bernd Schubert

This adds bitmaps that track which queues are registered and which queues
do not have queued requests.
These bitmaps are then used to map from request core to queue
and also allow load distribution. NUMA affinity is handled and
fuse client/server protocol does not need changes, all is handled
in fuse client internally.

Signed-off-by: Bernd Schubert <bschubert@ddn.com>
---
Changes in v5
- Rebased to miklos-for-next (Linux 7.2 base).
- Folded "Fetch a queued fuse request on command registration" into
  "Allow reduced number of ring queues", inlining fuse_uring_do_register()
  into fuse_uring_register().
  - Fixed retry logic in "Add retry attempts for numa local queues":
    replaced cpu++ with cpumask_next_wrap(qid, mask) so each retry
    advances to a genuinely different registered queue (Joanne)-
  - Simplified "Prefer the current core over mapping" (Joanne).
  - Folded READ_ONCE() annotation for ring->ready into "Allow reduced
    number of ring queues" to match WRITE_ONCE() on the writer side and
    suppress a KCSAN data-race warning.

Changes in v4:
- Fix leak of ring->numa_q_map
- Fix q-imbalance due to an issue in static cpu->qid mapping
- Performance tunings, like preferring the current cpu
- Removal of distribution among queues, Joanne had concerns about it.
  As it is an optimization, it can be added later again. At least
  most of it was removed, some light distribution is still left in.
- At the end of the series, add fuse debugfs entries. This could
  be factored out.
- Link to v3: https://lore.kernel.org/r/20251013-reduced-nr-ring-queues_3-v3-0-6d87c8aa31ae@ddn.com

---
Bernd Schubert (7):
      fuse: {io-uring} Add queue length counters
      fuse: {io-uring} Rename ring->nr_queues to max_nr_queues
      fuse: {io-uring} Use bitmaps to track registered queues
      fuse: {io-uring} Allow reduced number of ring queues
      fuse: {io-uring} Queue background requests on a different core
      fuse: {io-uring} Add retry attempts for numa local queues for load distribution
      fuse: {io-uring} Prefer the current core over mapping

 fs/fuse/dev_uring.c       | 313 ++++++++++++++++++++++++++++++++++------------
 fs/fuse/dev_uring_i.h     |  25 +++-
 fs/fuse/inode.c           |   2 +-
 include/uapi/linux/fuse.h |  10 +-
 4 files changed, 269 insertions(+), 81 deletions(-)
---
base-commit: 2dcf16d41cc04472a4f9bc6e99d0ab26cfb1afb1
change-id: 20250722-reduced-nr-ring-queues_3-6acb79dad978

Best regards,
-- 
Bernd Schubert <bernd@bsbernd.com>



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

end of thread, other threads:[~2026-06-11  2:16 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-28 22:55 [PATCH v5 0/7] fuse: {io-uring} Allow to reduce the number of queues and request distribution Bernd Schubert via B4 Relay
2026-05-28 22:55 ` Bernd Schubert
2026-05-28 22:55 ` [PATCH v5 1/7] fuse: {io-uring} Add queue length counters Bernd Schubert via B4 Relay
2026-05-28 22:55   ` Bernd Schubert
2026-05-28 22:55 ` [PATCH v5 2/7] fuse: {io-uring} Rename ring->nr_queues to max_nr_queues Bernd Schubert via B4 Relay
2026-05-28 22:55   ` Bernd Schubert
2026-05-28 22:55 ` [PATCH v5 3/7] fuse: {io-uring} Use bitmaps to track registered queues Bernd Schubert via B4 Relay
2026-05-28 22:55   ` Bernd Schubert
2026-05-28 22:55 ` [PATCH v5 4/7] fuse: {io-uring} Allow reduced number of ring queues Bernd Schubert via B4 Relay
2026-05-28 22:55   ` Bernd Schubert
2026-05-28 22:55 ` [PATCH v5 5/7] fuse: {io-uring} Queue background requests on a different core Bernd Schubert via B4 Relay
2026-05-28 22:55   ` Bernd Schubert
2026-05-28 22:55 ` [PATCH v5 6/7] fuse: {io-uring} Add retry attempts for numa local queues for load distribution Bernd Schubert via B4 Relay
2026-05-28 22:55   ` Bernd Schubert
2026-05-28 22:55 ` [PATCH v5 7/7] fuse: {io-uring} Prefer the current core over mapping Bernd Schubert via B4 Relay
2026-05-28 22:55   ` Bernd Schubert
2026-06-10 10:51 ` [PATCH v5 0/7] fuse: {io-uring} Allow to reduce the number of queues and request distribution Miklos Szeredi
2026-06-10 11:51   ` Horst Birthelmer
2026-06-10 16:33   ` Amir Goldstein
2026-06-11  2:15     ` Joanne Koong
2026-06-11  2:13   ` Joanne Koong

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.