Skip to content

KFunc scx_bpf_dsq_move_vtime

v6.13

This function moves a task from DSQ iteration to a PRIQ DSQ.

Definition

Transfer p which is on the DSQ currently iterated by it__iter to the priority queue of the DSQ specified by dsq_id. The destination must be a user DSQ as only user DSQs support priority queue.

p's slice and vtime are kept by default. Use scx_bpf_dsq_move_set_slice and scx_bpf_dsq_move_set_vtime to update.

All other aspects are identical to scx_bpf_dsq_move. See scx_bpf_dsq_insert_vtime for more information on vtime.

Parameters

it__iter: DSQ iterator in progress

p: task to transfer

dsq_id: DSQ to move p to

enq_flags: Bitfield of flags, see enum scx_enq_flags for valid values.

Return

Returns true if p has been consumed, false if p had already been consumed or dequeued.

Signature

bool scx_bpf_dsq_move_vtime(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags)

Usage

Docs could be improved

This part of the docs is incomplete, contributions are very welcome

Program types

The following program types can make use of this kfunc:

Example

Docs could be improved

This part of the docs is incomplete, contributions are very welcome