Function futex2_requeue [src]

Wake and/or requeue waiter(s) from one futex to another. Identical to FUTEX.CMP_REQUEUE, except it is part of the futex2 family of calls. Requires at least kernel v6.7.

Prototype

pub fn futex2_requeue( waiters: [*]const futex2_waitone, flags: FUTEX2_FLAGS_REQUEUE, nr_wake: i32, nr_requeue: i32, ) usize

Parameters

waiters: [*]const futex2_waitoneThe source and destination futexes. Must be a 2-element array. flags: FUTEX2_FLAGS_REQUEUECurrently unused. nr_wake: i32Maximum number of waiters to wake on the source futex. nr_requeue: i32Maximum number of waiters to transfer to the destination futex.

Source

pub fn futex2_requeue( /// The source and destination futexes. Must be a 2-element array. waiters: [*]const futex2_waitone, /// Currently unused. flags: FUTEX2_FLAGS_REQUEUE, /// Maximum number of waiters to wake on the source futex. nr_wake: i32, /// Maximum number of waiters to transfer to the destination futex. nr_requeue: i32, ) usize { return syscall4( .futex_requeue, @intFromPtr(waiters), @as(u32, @bitCast(flags)), @as(u32, @bitCast(nr_wake)), @as(u32, @bitCast(nr_requeue)), ); }