All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stefan Roesch <shr@devkernel.io>
To: kernel-team@fb.com
Cc: shr@devkernel.io, axboe@kernel.dk, olivier@trillion01.com,
	netdev@vger.kernel.org, io-uring@vger.kernel.org,
	kuba@kernel.org, ammarfaizi2@gnuweeb.org
Subject: [RFC PATCH v2 0/4] liburing: add api for napi busy poll timeout
Date: Mon,  7 Nov 2022 09:53:53 -0800	[thread overview]
Message-ID: <20221107175357.2733763-1-shr@devkernel.io> (raw)

This adds two new api's to set and clear the napi busy poll timeout. The
two new functions are called:
- io_uring_register_busy_poll_timeout and
- io_uring_unregister_busy_poll_timeout.

The patch series also contains the documentation for the two new functions
and two test programs. The client program is called napi-busy-poll-client
and the server program napi-busy-poll-server. The client measures the
roundtrip times of requests.

There is also a kernel patch "io-uring: support napi busy poll" to enable
this feature on the kernel side.

Changes:
- V2:
  - Updated the liburing.map file for the two new functions.
    (added a 2.4 section)
  - Added a description of the new feature to the changelog file
  - Fixed the indentation of the longopts structure
  - Used defined exit constants
  - Fixed encodeUserData to support 32 bit builds


Signed-off-by: Stefan Roesch <shr@devkernel.io>

Stefan Roesch (4):
  liburing: add api to set napi busy poll timeout
  liburing: add documentation for new napi busy polling
  liburing: add test programs for napi busy poll
  liburing: update changelog with new feature

 CHANGELOG                       |   3 +
 man/io_uring_register_napi.3    |  35 +++
 man/io_uring_unregister_napi.3  |  26 ++
 src/include/liburing.h          |   4 +
 src/include/liburing/io_uring.h |   4 +
 src/liburing.map                |   8 +
 src/register.c                  |  15 ++
 test/Makefile                   |   2 +
 test/napi-busy-poll-client.c    | 422 ++++++++++++++++++++++++++++++++
 test/napi-busy-poll-server.c    | 372 ++++++++++++++++++++++++++++
 10 files changed, 891 insertions(+)
 create mode 100644 man/io_uring_register_napi.3
 create mode 100644 man/io_uring_unregister_napi.3
 create mode 100644 test/napi-busy-poll-client.c
 create mode 100644 test/napi-busy-poll-server.c


base-commit: 754bc068ec482c5338a07dd74b7d3892729bb847
-- 
2.30.2


             reply	other threads:[~2022-11-07 17:56 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-07 17:53 Stefan Roesch [this message]
2022-11-07 17:53 ` [RFC PATCH v2 1/4] liburing: add api to set napi busy poll timeout Stefan Roesch
2022-11-08  7:14   ` Ammar Faizi
2022-11-07 17:53 ` [RFC PATCH v2 2/4] liburing: add documentation for new napi busy polling Stefan Roesch
2022-11-08  8:04   ` Ammar Faizi
2022-11-07 17:53 ` [RFC PATCH v2 3/4] liburing: add test programs for napi busy poll Stefan Roesch
2022-11-08  7:01   ` Ammar Faizi
2022-11-08  9:47     ` Ammar Faizi
2022-11-07 17:53 ` [RFC PATCH v2 4/4] liburing: update changelog with new feature Stefan Roesch

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20221107175357.2733763-1-shr@devkernel.io \
    --to=shr@devkernel.io \
    --cc=ammarfaizi2@gnuweeb.org \
    --cc=axboe@kernel.dk \
    --cc=io-uring@vger.kernel.org \
    --cc=kernel-team@fb.com \
    --cc=kuba@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=olivier@trillion01.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.