io_uring_prep_futex_wake(3) — Linux manual page


io_uring_prep_futex_wake(3)  liburing Manual io_uring_prep_futex_wake(3)

NAME         top

       io_uring_prep_futex_wake - prepare a futex wake request

SYNOPSIS         top

       #include <linux/futex.h>
       #include <unistd.h>
       #include <liburing.h>

       void io_uring_prep_futex_wake(struct io_uring_sqe *sqe,
                                     uint32_t *futex,
                                     uint64_t val,
                                     uint64_t mask,
                                     uint32_t futex_flags,
                                     unsigned int flags);

DESCRIPTION         top

       The io_uring_prep_futex_wake(3) function prepares a futex wake
       request. The submission queue entry sqe is setup for waking any
       waiters on the futex indicated by futex and at most val futexes.
       futex_flags indicates the futex2(2) modifier flags, and io_uring
       futex flags of flags .

       If a given bitset for who to wake is desired, then that must be
       set in mask .  Use FUTEX_BITSET_MATCH_ANY to match any waiter on
       the given futex.

       flags are currently unused and hence 0 must be passed.

       This function prepares an async futex(2) wake request. See that
       man page for details. Note that the io_uring futex wake request
       is similar to the FUTEX_WAKE_BITSET operation, as FUTEX_WAKE is a
       strict subset of that.

RETURN VALUE         top


ERRORS         top

       The CQE res field will contain the result of the operation. On
       success, the value will be the index into futexv which received a
       wakeup. See the related man page for details on possible values
       for errors. Note that where synchronous system calls will return
       -1 on failure and set errno to the actual error value, io_uring
       never uses errno.  Instead it returns the negated errno directly
       in the CQE res field.

SEE ALSO         top

       io_uring_get_sqe(3), io_uring_submit(3),
       io_uring_prep_futex_wait(3), io_uring_prep_futex_waitv(3),
       futex(2) futex2(2)

COLOPHON         top

       This page is part of the liburing (A library for io_uring)
       project.  Information about the project can be found at 
       ⟨⟩.  If you have a bug report for
       this manual page, send it to  This page
       was obtained from the project's upstream Git repository
       ⟨⟩ on 2023-12-22.  (At that
       time, the date of the most recent commit that was found in the
       repository was 2023-12-19.)  If you discover any rendering
       problems in this HTML version of the page, or you believe there
       is a better or more up-to-date source for the page, or you have
       corrections or improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to

liburing-2.5                  Sep 29, 2023   io_uring_prep_futex_wake(3)

Pages that refer to this page: io_uring_prep_futex_wait(3)io_uring_prep_futex_waitv(3)io_uring_prep_futex_wake(3)