Lines Matching refs:kit
9101 static bool scx_dsq_move(struct bpf_iter_scx_dsq_kern *kit,
9105 struct scx_dispatch_q *src_dsq = kit->dsq, *dst_dsq;
9114 * bpf_iter_scx_dsq_new() failed and left @kit->dsq NULL.
9161 if (nldsq_cursor_lost_task(&kit->cursor, src_rq, src_dsq, p)) {
9185 if (kit->cursor.flags & __SCX_DSQ_ITER_HAS_VTIME)
9186 p->scx.dsq_vtime = kit->vtime;
9187 if (kit->cursor.flags & __SCX_DSQ_ITER_HAS_SLICE)
9188 scx_set_task_slice(p, kit->slice);
9202 kit->cursor.flags &= ~(__SCX_DSQ_ITER_HAS_SLICE |
9339 struct bpf_iter_scx_dsq_kern *kit = (void *)it__iter;
9341 kit->slice = slice;
9342 kit->cursor.flags |= __SCX_DSQ_ITER_HAS_SLICE;
9358 struct bpf_iter_scx_dsq_kern *kit = (void *)it__iter;
9360 kit->vtime = vtime;
9361 kit->cursor.flags |= __SCX_DSQ_ITER_HAS_VTIME;
9848 struct bpf_iter_scx_dsq_kern *kit = (void *)it;
9860 * Always clear $kit->dsq.
9862 kit->dsq = NULL;
9871 kit->dsq = find_user_dsq(sch, dsq_id);
9872 if (!kit->dsq)
9875 kit->cursor = INIT_DSQ_LIST_CURSOR(kit->cursor, kit->dsq, flags);
9888 struct bpf_iter_scx_dsq_kern *kit = (void *)it;
9890 if (!kit->dsq)
9893 guard(raw_spinlock_irqsave)(&kit->dsq->lock);
9895 return nldsq_cursor_next_task(&kit->cursor, kit->dsq);
9906 struct bpf_iter_scx_dsq_kern *kit = (void *)it;
9908 if (!kit->dsq)
9911 if (!list_empty(&kit->cursor.node)) {
9914 raw_spin_lock_irqsave(&kit->dsq->lock, flags);
9915 list_del_init(&kit->cursor.node);
9916 raw_spin_unlock_irqrestore(&kit->dsq->lock, flags);
9918 kit->dsq = NULL;