io_uring_register_clock(3)

io_uring_register_clock3

Set clock source for event waiting

Usage

#include <liburing.h>

int io_uring_register_clock(struct io_uring *ring, struct io_uring_clock_register *arg);

Overview

The io_uring_register_clock(3) function registers which clock source should be used by io_uring, when an application waits for event completions. The ring argument should point to the ring in question, and the arg argument should be a pointer to a struct io_uring_clock_register .

The arg argument must be filled in with the appropriate information. It looks as follows:

struct io_uring_clock_register {
    __u32 clockid;
    __u32 __resv[3];
};

The clockid field must contain the clock source, with valid sources being:

CLOCK_MONOTONIC

a nonsettable system-wide clock that represents monotonic time.

CLOCK_BOOTTIME

A nonsettable system-wide clock that is identical to CLOCK_MONOTONIC , except that is also icnludes any time that the system is suspended.

See clock_gettime(3) for more details.

The __resv fields must be filled with zeroes.

Available since 6.12.

Return value

On success io_uring_register_clock(3) returns 0. 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.