io_uring_register_napi(3) liburing Manual io_uring_register_napi(3)

io_uring_register_napi - register NAPI busy poll settings

#include <liburing.h>
int io_uring_register_napi(struct io_uring *ring,
                           struct io_uring_napi *napi)

The 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 napi parameter. The structure consists of the napi timeout busy_poll_to (napi busy poll timeout in us) and 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.

On success io_uring_register_napi(3) return 0. On failure they return -errno. It also updates the napi structure with the current values.

November 16, 2022 liburing-2.4