mbox series

[liburing,00/11] Defer taskrun changes

Message ID 20220815130947.1002152-1-dylany@fb.com (mailing list archive)
Headers show
Series Defer taskrun changes | expand

Message

Dylan Yudaken Aug. 15, 2022, 1:09 p.m. UTC
This series adds support to liburing for the IORING_SETUP_DEFER_TASKRUN flag.

The second half of the series is a bit mixed and includes some documentation
fixes, overflow cleanups and test cleanups. I sent these a couple of months
ago and forgot about it, but now it does depend on the new API so it needs to
be ordered.
I can send it separately if you like.

Patches:

1 copies the definition from the kernel include file
2 introduces new APIs required for this feature
3/4/5 add tests for IORING_SETUP_DEFER_TASKRUN

6/7/8 clean and update existing documentation to match upstream
9 exposes the overflow state to the application
10 uses this and tests overflow functionality
11 gives an explicit warning if there is a short read in file-verify

Dylan Yudaken (11):
  Copy defer task run definition from kernel
  add io_uring_submit_and_get_events and io_uring_get_events
  add a t_probe_defer_taskrun helper function for tests
  update existing tests for defer taskrun
  add a defer-taskrun test
  fix documentation shortenings
  update io_uring_enter.2 docs for IORING_FEAT_NODROP
  add docs for overflow lost errors
  expose CQ ring overflow state
  overflow: add tests
  file-verify test: log if short read

 man/io_uring_enter.2            |  24 +++-
 man/io_uring_setup.2            |  11 +-
 man/io_uring_wait_cqe.3         |   2 +-
 man/io_uring_wait_cqe_nr.3      |   2 +-
 man/io_uring_wait_cqe_timeout.3 |   2 +-
 man/io_uring_wait_cqes.3        |   2 +-
 src/include/liburing.h          |  11 ++
 src/include/liburing/io_uring.h |   7 +
 src/queue.c                     |  28 ++--
 test/Makefile                   |   1 +
 test/cq-overflow.c              | 248 +++++++++++++++++++++++++++++++-
 test/defer-taskrun.c            | 217 ++++++++++++++++++++++++++++
 test/eventfd-disable.c          |  32 ++++-
 test/file-verify.c              |   4 +
 test/helpers.c                  |  12 ++
 test/helpers.h                  |   2 +
 test/iopoll.c                   |  16 ++-
 test/multicqes_drain.c          |  49 ++++++-
 test/poll-mshot-overflow.c      |  39 ++++-
 test/recv-multishot.c           |  32 +++--
 test/rsrc_tags.c                |  10 +-
 21 files changed, 697 insertions(+), 54 deletions(-)
 create mode 100644 test/defer-taskrun.c


base-commit: 15cc446cb8b0caa5c939423d31182eba66141539