io_uring_free_buf_ring(3)

io_uring_free_buf_ring3

Register and free a buffer ring for provided buffers

Usage

#include <liburing.h>

int io_uring_free_buf_ring(struct io_uring *ring, struct io_uring_buf_ring *br, unsigned int nentries, int bgid);

Overview

The io_uring_free_buf_ring(3) function unregisters a previously registered shared buffer ring. The ring must have heen previously returned from io_uring_setup_buf_ring(3).

The ring argument must pointer to the ring for which the provided buffer ring is being registered, br must point to a buffer ring previously returned by io_uring_setup_buf_ring(3), nentries is the number of entries requested in the buffer ring, and bgid is the buffer group ID that br was setup with.

Under the covers, this function uses io_uring_unregister_buf_ring(3) to unregister the ring, and handles the freeing of the ring rather than letting the application open code it.

Available since 5.19.

Return value

On success io_uring_free_buf_ring(3) returns zero. On failure it returns -errno.

Releases

Unchanged in 2 releases since Debian 13 (Trixie).

  1. 13–Arch

From liburing 2.15-1 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.