Home
last modified time | relevance | path

Searched refs:dsq_id (Results 1 – 7 of 7) sorted by relevance

/linux/tools/sched_ext/include/scx/
H A Dcompat.bpf.h34 bool scx_bpf_dsq_move_to_local___v2___compat(u64 dsq_id, u64 enq_flags) __ksym __weak;
35 bool scx_bpf_dsq_move_to_local___v1(u64 dsq_id) __ksym __weak;
38 bool scx_bpf_dsq_move___new(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u…
39 …time___new(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __…
41 bool scx_bpf_consume___old(u64 dsq_id) __ksym __weak;
44 …_dsq___old(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __…
45 …_dsq___old(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __…
47 #define scx_bpf_dsq_move_to_local(dsq_id, enq_flags) \ argument
49 scx_bpf_dsq_move_to_local___v2___compat((dsq_id), (enq_flags)) : \
51 scx_bpf_dsq_move_to_local___v1((dsq_id)) : \
[all …]
H A Dcommon.bpf.h63 s32 scx_bpf_create_dsq(u64 dsq_id, s32 node) __ksym;
71 s32 scx_bpf_dsq_nr_queued(u64 dsq_id) __ksym;
72 void scx_bpf_destroy_dsq(u64 dsq_id) __ksym;
73 struct task_struct *scx_bpf_dsq_peek(u64 dsq_id) __ksym __weak;
74 int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak;
/linux/tools/testing/selftests/sched_ext/
H A Dpeek_dsq.bpf.c88 int dsq_id = dsq_pool_base_id + i; in scan_dsq_pool() local
92 task = __COMPAT_scx_bpf_dsq_peek(dsq_id); in scan_dsq_pool()
98 if (!moved && scx_bpf_dsq_move_to_local(dsq_id, 0)) { in scan_dsq_pool()
206 int dsq_id = dsq_pool_base_id + i; in BPF_STRUCT_OPS_SLEEPABLE() local
208 err = scx_bpf_create_dsq(dsq_id, -1); in BPF_STRUCT_OPS_SLEEPABLE()
210 scx_bpf_error("Failed to create DSQ pool entry %d: %d", dsq_id, err); in BPF_STRUCT_OPS_SLEEPABLE()
236 int dsq_id = dsq_pool_base_id + i; in BPF_STRUCT_OPS() local
238 scx_bpf_destroy_dsq(dsq_id); in BPF_STRUCT_OPS()
H A Dselect_cpu_dispatch.bpf.c18 u64 dsq_id = SCX_DSQ_LOCAL; in BPF_STRUCT_OPS() local
28 dsq_id = SCX_DSQ_GLOBAL; in BPF_STRUCT_OPS()
32 scx_bpf_dsq_insert(p, dsq_id, SCX_SLICE_DFL, 0); in BPF_STRUCT_OPS()
H A Dselect_cpu_dfl_nodispatch.bpf.c55 u64 dsq_id = SCX_DSQ_GLOBAL; in BPF_STRUCT_OPS() local
65 dsq_id = SCX_DSQ_LOCAL; in BPF_STRUCT_OPS()
70 scx_bpf_dsq_insert(p, dsq_id, SCX_SLICE_DFL, enq_flags); in BPF_STRUCT_OPS()
/linux/kernel/sched/ext/
H A Dext.c310 static struct scx_dispatch_q *find_user_dsq(struct scx_sched *sch, u64 dsq_id) in find_user_dsq() argument
312 return rhashtable_lookup(&sch->dsq_hash, &dsq_id, dsq_hash_params); in find_user_dsq()
1821 struct rq *rq, u64 dsq_id, in find_dsq_for_dispatch() argument
1826 if (dsq_id == SCX_DSQ_LOCAL) in find_dsq_for_dispatch()
1829 if ((dsq_id & SCX_DSQ_LOCAL_ON) == SCX_DSQ_LOCAL_ON) { in find_dsq_for_dispatch()
1830 s32 cpu = scx_cpu_ret(sch, dsq_id & SCX_DSQ_LOCAL_CPU_MASK); in find_dsq_for_dispatch()
1838 if (dsq_id == SCX_DSQ_GLOBAL) in find_dsq_for_dispatch()
1841 dsq = find_user_dsq(sch, dsq_id); in find_dsq_for_dispatch()
1848 scx_error(sch, "non-existent DSQ 0x%llx", dsq_id); in find_dsq_for_dispatch()
1857 struct task_struct *p, u64 dsq_id, in mark_direct_dispatch() argument
[all …]
H A Dinternal.h1295 u64 dsq_id; member
2065 s32 scx_init_dsq(struct scx_dispatch_q *dsq, u64 dsq_id, struct scx_sched *sch);