From patchwork Sat Nov 19 04:11:11 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefan Roesch X-Patchwork-Id: 13049598 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 191DEC4321E for ; Sat, 19 Nov 2022 04:12:50 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231189AbiKSEMr (ORCPT ); Fri, 18 Nov 2022 23:12:47 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33470 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234094AbiKSEMP (ORCPT ); Fri, 18 Nov 2022 23:12:15 -0500 Received: from 66-220-144-178.mail-mxout.facebook.com (66-220-144-178.mail-mxout.facebook.com [66.220.144.178]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 04E1BA6A22 for ; Fri, 18 Nov 2022 20:11:35 -0800 (PST) Received: by dev0134.prn3.facebook.com (Postfix, from userid 425415) id E9B101956729; Fri, 18 Nov 2022 20:11:14 -0800 (PST) From: Stefan Roesch 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 v4 2/4] liburing: add documentation for new napi busy polling Date: Fri, 18 Nov 2022 20:11:11 -0800 Message-Id: <20221119041113.146790-3-shr@devkernel.io> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20221119041113.146790-1-shr@devkernel.io> References: <20221119041113.146790-1-shr@devkernel.io> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: io-uring@vger.kernel.org This adds two man pages for the two new functions: - io_uring_register_nap - io_uring_unregister_napi Signed-off-by: Stefan Roesch --- man/io_uring_register_napi.3 | 40 ++++++++++++++++++++++++++++++++++ man/io_uring_unregister_napi.3 | 27 +++++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 man/io_uring_register_napi.3 create mode 100644 man/io_uring_unregister_napi.3 diff --git a/man/io_uring_register_napi.3 b/man/io_uring_register_napi.3 new file mode 100644 index 0000000..2a70e3b --- /dev/null +++ b/man/io_uring_register_napi.3 @@ -0,0 +1,40 @@ +.\" Copyright (C) 2022 Stefan Roesch +.\" +.\" SPDX-License-Identifier: LGPL-2.0-or-later +.\" +.TH io_uring_register_napi 3 "November 16, 2022" "liburing-2.4" "liburing Manual" +.SH NAME +io_uring_register_napi \- register NAPI busy poll settings +.SH SYNOPSIS +.nf +.B #include +.PP +.BI "int io_uring_register_napi(struct io_uring *" ring "," +.BI " struct io_uring_napi *" napi) +.PP +.fi +.SH DESCRIPTION +.PP +The +.BR io_uring_register_napi (3) +function registers the NAPI settings for subsequent operations. The NAPI +settings are specified in the structure that is passed in the +.I napi +parameter. The structure consists of the napi timeout +.I busy_poll_to +(napi busy poll timeout in us) and +.I prefer_busy_poll. + +Registering a NAPI settings sets the mode when calling the function +napi_busy_loop and corresponds to the SO_PREFER_BUSY_POLL socket +option. + +NAPI busy poll can reduce the network roundtrip time. + + +.SH RETURN VALUE +On success +.BR io_uring_register_napi_prefer_busy_poll (3) +return 0. On failure they return +.BR -errno . +It also updates the napi structure with the current values. diff --git a/man/io_uring_unregister_napi.3 b/man/io_uring_unregister_napi.3 new file mode 100644 index 0000000..193d9e5 --- /dev/null +++ b/man/io_uring_unregister_napi.3 @@ -0,0 +1,27 @@ +.\" Copyright (C) 2022 Stefan Roesch +.\" +.\" SPDX-License-Identifier: LGPL-2.0-or-later +.\" +.TH io_uring_unregister_napi 3 "November 16, 2022" "liburing-2.4" "liburing Manual" +.SH NAME +io_uring_unregister_napi \- unregister NAPI busy poll settings +.SH SYNOPSIS +.nf +.B #include +.PP +.BI "int io_uring_unregister_napi(struct io_uring *" ring "," +.BI " struct io_uring_napi *" napi) +.PP +.fi +.SH DESCRIPTION +.PP +The +.BR io_uring_unregister_napi (3) +function unregisters the NAPI busy poll settings for subsequent operations. + +.SH RETURN VALUE +On success +.BR io_uring_unregister_napi_busy_poll_timeout (3) +return 0. On failure they return +.BR -errno . +It also updates the napi structure with the current values.