Home
last modified time | relevance | path

Searched refs:cpuset (Results 1 – 25 of 85) sorted by relevance

1234

/linux-6.15/kernel/cgroup/
H A Dcpuset-internal.h75 struct cpuset { struct
197 static inline struct cpuset *parent_cs(struct cpuset *cs) in parent_cs()
203 static inline bool is_cpuset_online(struct cpuset *cs) in is_cpuset_online()
233 static inline int is_spread_page(const struct cpuset *cs) in is_spread_page()
238 static inline int is_spread_slab(const struct cpuset *cs) in is_spread_slab()
275 void cpuset_update_tasks_nodemask(struct cpuset *cs);
287 void cpuset1_update_task_spread_flags(struct cpuset *cs,
289 void cpuset1_update_tasks_flags(struct cpuset *cs);
290 void cpuset1_hotplug_update_tasks(struct cpuset *cs,
293 int cpuset1_validate_change(struct cpuset *cur, struct cpuset *trial);
[all …]
H A Dcpuset.c366 struct cpuset *cs; in guarantee_online_cpus()
471 static struct cpuset *alloc_trial_cpuset(struct cpuset *cs) in alloc_trial_cpuset()
549 static int validate_change(struct cpuset *cur, struct cpuset *trial) in validate_change()
656 static int cpusets_overlap(struct cpuset *a, struct cpuset *b) in cpusets_overlap()
672 struct cpuset *cp; in update_domain_attr_tree()
1017 struct cpuset *cs; in rebuild_sched_domains_locked()
1143 struct cpuset *cs, struct cpuset *parent) in compute_effective_cpumask()
2021 struct cpuset *cp; in update_cpumasks_hier()
2258 static int update_cpumask(struct cpuset *cs, struct cpuset *trialcs, in update_cpumask()
2658 struct cpuset *cp; in update_nodemasks_hier()
[all …]
H A Dcpuset-v1.c11 struct cpuset *cs;
168 struct cpuset *cs = css_cs(css); in cpuset_write_s64()
194 struct cpuset *cs = css_cs(css); in cpuset_read_s64()
239 void cpuset1_update_tasks_flags(struct cpuset *cs) in cpuset1_update_tasks_flags()
259 struct cpuset *parent; in remove_tasks_in_empty_cpuset()
287 void cpuset1_hotplug_update_tasks(struct cpuset *cs, in cpuset1_hotplug_update_tasks()
341 static int is_cpuset_subset(const struct cpuset *p, const struct cpuset *q) in is_cpuset_subset()
353 int cpuset1_validate_change(struct cpuset *cur, struct cpuset *trial) in cpuset1_validate_change()
356 struct cpuset *c, *par; in cpuset1_validate_change()
420 struct cpuset *cs = css_cs(css); in cpuset_read_u64()
[all …]
/linux-6.15/Documentation/admin-guide/cgroup-v1/
H A Dcpusets.rst174 - cpuset.cpus: list of CPUs in that cpuset
175 - cpuset.mems: list of Memory Nodes in that cpuset
247 A cpuset that is cpuset.mem_exclusive *or* cpuset.mem_hardwall is "hardwalled",
642 If a cpuset has its 'cpuset.cpus' modified, then each task in that cpuset
702 /sys/fs/cgroup/cpuset tasks file for that cpuset.
709 mount -t cgroup -ocpuset cpuset /sys/fs/cgroup/cpuset
746 # mount -t cgroup -o cpuset cpuset /sys/fs/cgroup/cpuset
767 cpuset.cpu_exclusive cpuset.mems
768 cpuset.cpus cpuset.sched_load_balance
776 the cpuset.
[all …]
H A Dmemcg_test.rst168 mount -t cgroup -o cpuset none /opt/cpuset
170 mkdir /opt/cpuset/01
171 echo 1 > /opt/cpuset/01/cpuset.cpus
172 echo 0 > /opt/cpuset/01/cpuset.mems
173 echo 1 > /opt/cpuset/01/cpuset.memory_migrate
174 mkdir /opt/cpuset/02
175 echo 1 > /opt/cpuset/02/cpuset.cpus
176 echo 1 > /opt/cpuset/02/cpuset.mems
177 echo 1 > /opt/cpuset/02/cpuset.memory_migrate
181 under cpuset.::
[all …]
/linux-6.15/tools/testing/selftests/cgroup/
H A Dtest_cpuset_prs.sh79 echo 0-6 > test/cpuset.cpus
84 echo "" > test/cpuset.cpus
627 CPUS=$DIR/cpuset.cpus
935 CONTROLLER=cpuset
991 CONTROLLER=cpuset
1060 echo 2-3 > cpuset.cpus
1091 echo 2-3 > cpuset.cpus
1105 echo 2 > cpuset.cpus
1109 echo 2-3 > cpuset.cpus
1150 echo 1 > cpuset.cpus
[all …]
H A Dtest_cpuset_v1_hp.sh17 CPUSET=$(mount -t cgroup | grep cpuset | head -1 | awk -e '{print $3}')
25 echo 1 > $CPUSET/$TDIR/cpuset.cpus
26 echo 0 > $CPUSET/$TDIR/cpuset.mems
30 NEWCS=$(cat /proc/$TASK/cpuset)
39 NEWCS=$(cat /proc/$TASK/cpuset)
/linux-6.15/tools/testing/selftests/bpf/prog_tests/
H A Dfree_timer.c43 cpu_set_t cpuset; in overwrite_timer_fn() local
47 CPU_ZERO(&cpuset); in overwrite_timer_fn()
48 CPU_SET(0, &cpuset); in overwrite_timer_fn()
49 pthread_setaffinity_np(pthread_self(), sizeof(cpuset), &cpuset); in overwrite_timer_fn()
82 cpu_set_t cpuset; in start_timer_fn() local
86 CPU_ZERO(&cpuset); in start_timer_fn()
87 CPU_SET(1, &cpuset); in start_timer_fn()
88 pthread_setaffinity_np(pthread_self(), sizeof(cpuset), &cpuset); in start_timer_fn()
H A Dtimer_lockup.c27 cpu_set_t cpuset; in timer_lockup_thread() local
29 CPU_ZERO(&cpuset); in timer_lockup_thread()
30 CPU_SET(__sync_fetch_and_add(&cpu, 1), &cpuset); in timer_lockup_thread()
31 ASSERT_OK(pthread_setaffinity_np(pthread_self(), sizeof(cpuset), in timer_lockup_thread()
32 &cpuset), in timer_lockup_thread()
H A Darena_spin_lock.c31 cpu_set_t cpuset; in spin_lock_thread() local
33 CPU_ZERO(&cpuset); in spin_lock_thread()
34 CPU_SET(__sync_fetch_and_add(&cpu, 1), &cpuset); in spin_lock_thread()
35 ASSERT_OK(pthread_setaffinity_np(pthread_self(), sizeof(cpuset), &cpuset), "cpu affinity"); in spin_lock_thread()
H A Dtest_overhead.c49 cpu_set_t cpuset; in setaffinity() local
52 CPU_ZERO(&cpuset); in setaffinity()
53 CPU_SET(cpu, &cpuset); in setaffinity()
54 sched_setaffinity(0, sizeof(cpuset), &cpuset); in setaffinity()
/linux-6.15/Documentation/translations/zh_CN/scheduler/
H A Dsched-capacity.rst259 是,这个键是系统范围可见的。想象下面使用了cpuset的步骤::
272 mkdir /sys/fs/cgroup/cpuset/cs0
273 echo 0-1 > /sys/fs/cgroup/cpuset/cs0/cpuset.cpus
274 echo 0 > /sys/fs/cgroup/cpuset/cs0/cpuset.mems
276 mkdir /sys/fs/cgroup/cpuset/cs1
277 echo 2-7 > /sys/fs/cgroup/cpuset/cs1/cpuset.cpus
278 echo 0 > /sys/fs/cgroup/cpuset/cs1/cpuset.mems
280 echo 0 > /sys/fs/cgroup/cpuset/cpuset.sched_load_balance
/linux-6.15/tools/sched_ext/
H A Dscx_central.c52 cpu_set_t *cpuset; in main() local
106 cpuset = CPU_ALLOC(skel->rodata->nr_cpu_ids); in main()
107 SCX_BUG_ON(!cpuset, "Failed to allocate cpuset"); in main()
108 CPU_ZERO_S(CPU_ALLOC_SIZE(skel->rodata->nr_cpu_ids), cpuset); in main()
109 CPU_SET(skel->rodata->central_cpu, cpuset); in main()
110 SCX_BUG_ON(sched_setaffinity(0, sizeof(*cpuset), cpuset), in main()
113 CPU_FREE(cpuset); in main()
/linux-6.15/tools/testing/selftests/x86/
H A Dsysret_ss_attrs.c55 cpu_set_t cpuset; in main() local
56 CPU_ZERO(&cpuset); in main()
57 CPU_SET(0, &cpuset); in main()
58 if (sched_setaffinity(0, sizeof(cpuset), &cpuset) != 0) in main()
H A Dioperm.c69 cpu_set_t cpuset; in main() local
70 CPU_ZERO(&cpuset); in main()
71 CPU_SET(0, &cpuset); in main()
72 if (sched_setaffinity(0, sizeof(cpuset), &cpuset) != 0) in main()
H A Diopl.c153 cpu_set_t cpuset; in main() local
155 CPU_ZERO(&cpuset); in main()
156 CPU_SET(0, &cpuset); in main()
157 if (sched_setaffinity(0, sizeof(cpuset), &cpuset) != 0) in main()
/linux-6.15/tools/testing/selftests/powerpc/benchmarks/
H A Dfork.c32 cpu_set_t cpuset; in set_cpu() local
37 CPU_ZERO(&cpuset); in set_cpu()
38 CPU_SET(cpu, &cpuset); in set_cpu()
40 if (sched_setaffinity(0, sizeof(cpuset), &cpuset)) { in set_cpu()
137 cpu_set_t cpuset; in bench_thread() local
149 CPU_ZERO(&cpuset); in bench_thread()
150 CPU_SET(cpu, &cpuset); in bench_thread()
152 rc = pthread_attr_setaffinity_np(&attr, sizeof(cpu_set_t), &cpuset); in bench_thread()
H A Dcontext_switch.c78 cpu_set_t cpuset; in start_thread_on() local
81 CPU_ZERO(&cpuset); in start_thread_on()
82 CPU_SET(cpu, &cpuset); in start_thread_on()
109 cpu_set_t *cpuset; in start_process_on() local
123 cpuset = CPU_ALLOC(ncpus); in start_process_on()
124 if (!cpuset) { in start_process_on()
128 CPU_ZERO_S(size, cpuset); in start_process_on()
129 CPU_SET_S(cpu, size, cpuset); in start_process_on()
131 if (sched_setaffinity(0, size, cpuset)) { in start_process_on()
133 CPU_FREE(cpuset); in start_process_on()
[all …]
/linux-6.15/tools/testing/selftests/powerpc/tm/
H A Dtm-poison.c29 cpu_set_t cpuset; in tm_poison_test() local
42 CPU_ZERO(&cpuset); in tm_poison_test()
43 CPU_SET(cpu, &cpuset); in tm_poison_test()
44 FAIL_IF(sched_setaffinity(0, sizeof(cpuset), &cpuset) != 0); in tm_poison_test()
/linux-6.15/tools/perf/bench/
H A Dfutex-wake.c100 cpu_set_t *cpuset; in block_threads() local
106 cpuset = CPU_ALLOC(nrcpus); in block_threads()
107 BUG_ON(!cpuset); in block_threads()
115 CPU_ZERO_S(size, cpuset); in block_threads()
116 CPU_SET_S(perf_cpu_map__cpu(cpu, i % perf_cpu_map__nr(cpu)).cpu, size, cpuset); in block_threads()
118 if (pthread_attr_setaffinity_np(&thread_attr, size, cpuset)) { in block_threads()
119 CPU_FREE(cpuset); in block_threads()
124 CPU_FREE(cpuset); in block_threads()
129 CPU_FREE(cpuset); in block_threads()
H A Dfutex-hash.c126 cpu_set_t *cpuset; in bench_futex_hash() local
178 cpuset = CPU_ALLOC(nrcpus); in bench_futex_hash()
179 BUG_ON(!cpuset); in bench_futex_hash()
188 CPU_ZERO_S(size, cpuset); in bench_futex_hash()
190 CPU_SET_S(perf_cpu_map__cpu(cpu, i % perf_cpu_map__nr(cpu)).cpu, size, cpuset); in bench_futex_hash()
191 ret = pthread_attr_setaffinity_np(&thread_attr, size, cpuset); in bench_futex_hash()
193 CPU_FREE(cpuset); in bench_futex_hash()
199 CPU_FREE(cpuset); in bench_futex_hash()
204 CPU_FREE(cpuset); in bench_futex_hash()
H A Dfutex-lock-pi.c123 cpu_set_t *cpuset; in create_threads() local
130 cpuset = CPU_ALLOC(nrcpus); in create_threads()
131 BUG_ON(!cpuset); in create_threads()
147 CPU_ZERO_S(size, cpuset); in create_threads()
148 CPU_SET_S(perf_cpu_map__cpu(cpu, i % perf_cpu_map__nr(cpu)).cpu, size, cpuset); in create_threads()
150 if (pthread_attr_setaffinity_np(&thread_attr, size, cpuset)) { in create_threads()
151 CPU_FREE(cpuset); in create_threads()
156 CPU_FREE(cpuset); in create_threads()
161 CPU_FREE(cpuset); in create_threads()
H A Dfutex-requeue.c126 cpu_set_t *cpuset; in block_threads() local
133 cpuset = CPU_ALLOC(nrcpus); in block_threads()
134 BUG_ON(!cpuset); in block_threads()
142 CPU_ZERO_S(size, cpuset); in block_threads()
143 CPU_SET_S(perf_cpu_map__cpu(cpu, i % perf_cpu_map__nr(cpu)).cpu, size, cpuset); in block_threads()
145 if (pthread_attr_setaffinity_np(&thread_attr, size, cpuset)) { in block_threads()
146 CPU_FREE(cpuset); in block_threads()
151 CPU_FREE(cpuset); in block_threads()
156 CPU_FREE(cpuset); in block_threads()
H A Dfutex-wake-parallel.c150 cpu_set_t *cpuset; in block_threads() local
157 cpuset = CPU_ALLOC(nrcpus); in block_threads()
158 BUG_ON(!cpuset); in block_threads()
166 CPU_ZERO_S(size, cpuset); in block_threads()
167 CPU_SET_S(perf_cpu_map__cpu(cpu, i % perf_cpu_map__nr(cpu)).cpu, size, cpuset); in block_threads()
169 if (pthread_attr_setaffinity_np(&thread_attr, size, cpuset)) { in block_threads()
170 CPU_FREE(cpuset); in block_threads()
175 CPU_FREE(cpuset); in block_threads()
180 CPU_FREE(cpuset); in block_threads()
/linux-6.15/Documentation/translations/zh_CN/mm/
H A Dhugetlbfs_reserv.rst416 * 当cpuset被配置时,它打破了严格的hugetlb页面预留,因为计数是在一个全局变量上完
417 * 成的。在有cpuset的情况下,这样的预留完全是垃圾,因为预留没有根据当前cpuset
418 * 页面可用性来检查。在任务所在的cpuset中缺乏空闲的htlb页面时,应用程序仍然有可能
419 * 被内核OOM'ed。试图用cpuset来执行严格的计数几乎是不可能的(或者说太难看了),因
420 * 为cpuset太不稳定了,任务或内存节点可以在cpuset之间动态移动。与cpuset共享
422 * 页的可用性,作为一种最好的尝试,希望能将cpuset改变语义的影响降到最低。

1234