Home
last modified time | relevance | path

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

123

/linux/kernel/cgroup/
H A Dcpuset-internal.h75 struct cpuset { struct
194 extern struct cpuset top_cpuset; argument
196 static inline struct cpuset *css_cs(struct cgroup_subsys_state *css) in css_cs()
198 return css ? container_of(css, struct cpuset, css) : NULL; in css_cs()
202 static inline struct cpuset *task_cs(struct task_struct *task) in task_cs()
207 static inline struct cpuset *parent_cs(struct cpuset *cs) in parent_cs()
213 static inline bool is_cpuset_online(struct cpuset *cs) in is_cpuset_online()
218 static inline int is_cpu_exclusive(const struct cpuset *cs) in is_cpu_exclusive()
223 static inline int is_mem_exclusive(const struct cpuset *cs) in is_mem_exclusive()
228 static inline int is_mem_hardwall(const struct cpuset *cs) in is_mem_hardwall()
[all …]
H A Dcpuset-v1.c11 struct cpuset *cs;
148 static int update_relax_domain_level(struct cpuset *cs, s64 val) in update_relax_domain_level()
168 struct cpuset *cs = css_cs(css); in cpuset_write_s64()
192 struct cpuset *cs = css_cs(css); in cpuset_read_s64()
212 void cpuset1_update_task_spread_flags(struct cpuset *cs, in cpuset1_update_task_spread_flags()
232 void cpuset1_update_tasks_flags(struct cpuset *cs) in cpuset1_update_tasks_flags()
250 static void remove_tasks_in_empty_cpuset(struct cpuset *cs) in remove_tasks_in_empty_cpuset()
252 struct cpuset *parent; in remove_tasks_in_empty_cpuset()
280 void cpuset1_hotplug_update_tasks(struct cpuset *cs, in cpuset1_hotplug_update_tasks()
334 static int is_cpuset_subset(const struct cpuset *p, const struct cpuset *q) in is_cpuset_subset()
[all …]
/linux/tools/testing/selftests/cgroup/
H A Dtest_cpuset_prs.sh25 SUBPARTS_CPUS=$CGROUP2/.__DEBUG__.cpuset.cpus.subpartitions
26 CPULIST=$(cat $CGROUP2/cpuset.cpus.effective)
71 echo +cpuset > cgroup.subtree_control
79 echo 0-6 > test/cpuset.cpus
80 echo root > test/cpuset.cpus.partition
81 cat test/cpuset.cpus.partition | grep -q invalid
83 echo member > test/cpuset.cpus.partition
84 echo "" > test/cpuset.cpus
98 BOOT_ISOLCPUS=$(cat $CGROUP2/cpuset.cpus.isolated)
101 BOOT_ISOLCPUS=$(cat $CGROUP2/cpuset.cpus.isolated)
[all …]
H A Dtest_cpuset_v1_hp.sh17 CPUSET=$(mount -t cgroup | grep cpuset | head -1 | awk '{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/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.c24 cpu_set_t cpuset; in spin_lock_thread() local
26 CPU_ZERO(&cpuset); in spin_lock_thread()
27 CPU_SET(__sync_fetch_and_add(&cpu, 1), &cpuset); in spin_lock_thread()
28 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/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/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()
/linux/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()
91 rc = pthread_attr_setaffinity_np(&attr, sizeof(cpu_set_t), &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()
[all …]
/linux/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/tools/perf/bench/
H A Dfutex-wake.c103 cpu_set_t *cpuset; in block_threads() local
109 cpuset = CPU_ALLOC(nrcpus); in block_threads()
110 BUG_ON(!cpuset); in block_threads()
118 CPU_ZERO_S(size, cpuset); in block_threads()
119 CPU_SET_S(perf_cpu_map__cpu(cpu, i % perf_cpu_map__nr(cpu)).cpu, size, cpuset); in block_threads()
121 if (pthread_attr_setaffinity_np(&thread_attr, size, cpuset)) { in block_threads()
122 CPU_FREE(cpuset); in block_threads()
127 CPU_FREE(cpuset); in block_threads()
132 CPU_FREE(cpuset); in block_threads()
H A Dfutex-lock-pi.c126 cpu_set_t *cpuset; in create_threads() local
133 cpuset = CPU_ALLOC(nrcpus); in create_threads()
134 BUG_ON(!cpuset); in create_threads()
150 CPU_ZERO_S(size, cpuset); in create_threads()
151 CPU_SET_S(perf_cpu_map__cpu(cpu, i % perf_cpu_map__nr(cpu)).cpu, size, cpuset); in create_threads()
153 if (pthread_attr_setaffinity_np(&thread_attr, size, cpuset)) { in create_threads()
154 CPU_FREE(cpuset); in create_threads()
159 CPU_FREE(cpuset); in create_threads()
164 CPU_FREE(cpuset); in create_threads()
H A Dfutex-hash.c130 cpu_set_t *cpuset; in bench_futex_hash() local
183 cpuset = CPU_ALLOC(nrcpus); in bench_futex_hash()
184 BUG_ON(!cpuset); in bench_futex_hash()
193 CPU_ZERO_S(size, cpuset); in bench_futex_hash()
195 CPU_SET_S(perf_cpu_map__cpu(cpu, i % perf_cpu_map__nr(cpu)).cpu, size, cpuset); in bench_futex_hash()
196 ret = pthread_attr_setaffinity_np(&thread_attr, size, cpuset); in bench_futex_hash()
198 CPU_FREE(cpuset); in bench_futex_hash()
204 CPU_FREE(cpuset); in bench_futex_hash()
209 CPU_FREE(cpuset); in bench_futex_hash()
H A Dfutex-requeue.c129 cpu_set_t *cpuset; in block_threads() local
136 cpuset = CPU_ALLOC(nrcpus); in block_threads()
137 BUG_ON(!cpuset); in block_threads()
145 CPU_ZERO_S(size, cpuset); in block_threads()
146 CPU_SET_S(perf_cpu_map__cpu(cpu, i % perf_cpu_map__nr(cpu)).cpu, size, cpuset); in block_threads()
148 if (pthread_attr_setaffinity_np(&thread_attr, size, cpuset)) { in block_threads()
149 CPU_FREE(cpuset); in block_threads()
154 CPU_FREE(cpuset); in block_threads()
159 CPU_FREE(cpuset); in block_threads()
H A Dfutex-wake-parallel.c153 cpu_set_t *cpuset; in block_threads() local
160 cpuset = CPU_ALLOC(nrcpus); in block_threads()
161 BUG_ON(!cpuset); in block_threads()
169 CPU_ZERO_S(size, cpuset); in block_threads()
170 CPU_SET_S(perf_cpu_map__cpu(cpu, i % perf_cpu_map__nr(cpu)).cpu, size, cpuset); in block_threads()
172 if (pthread_attr_setaffinity_np(&thread_attr, size, cpuset)) { in block_threads()
173 CPU_FREE(cpuset); in block_threads()
178 CPU_FREE(cpuset); in block_threads()
183 CPU_FREE(cpuset); in block_threads()
H A Depoll-ctl.c226 cpu_set_t *cpuset; in do_threads() local
236 cpuset = CPU_ALLOC(nrcpus); in do_threads()
237 BUG_ON(!cpuset); in do_threads()
263 CPU_ZERO_S(size, cpuset); in do_threads()
265 size, cpuset); in do_threads()
267 ret = pthread_attr_setaffinity_np(&thread_attr, size, cpuset); in do_threads()
269 CPU_FREE(cpuset); in do_threads()
279 CPU_FREE(cpuset); in do_threads()
284 CPU_FREE(cpuset); in do_threads()
/linux/tools/perf/util/
H A Daffinity.c91 unsigned long *cpuset = bitmap_zalloc(cpu_set_size * 8); in cpu_map__set_affinity() local
95 if (!cpuset) in cpu_map__set_affinity()
99 __set_bit(cpu.cpu, cpuset); in cpu_map__set_affinity()
101 sched_setaffinity(0, cpu_set_size, (cpu_set_t *)cpuset); in cpu_map__set_affinity()
102 zfree(&cpuset); in cpu_map__set_affinity()
/linux/Documentation/admin-guide/cgroup-v1/
H A Dmemcg_test.rst163 For NUMA, migration is an another special case. To do easy test, cpuset
166 mount -t cgroup -o cpuset none /opt/cpuset
168 mkdir /opt/cpuset/01
169 echo 1 > /opt/cpuset/01/cpuset.cpus
170 echo 0 > /opt/cpuset/01/cpuset.mems
171 echo 1 > /opt/cpuset/01/cpuset.memory_migrate
172 mkdir /opt/cpuset/02
173 echo 1 > /opt/cpuset/02/cpuset.cpus
174 echo 1 > /opt/cpuset/02/cpuset.mems
175 echo 1 > /opt/cpuset/02/cpuset.memory_migrate
[all …]
/linux/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改变语义的影响降到最低。
/linux/tools/power/cpupower/bench/
H A Dsystem.c77 cpu_set_t cpuset; in set_cpu_affinity() local
79 CPU_ZERO(&cpuset); in set_cpu_affinity()
80 CPU_SET(cpu, &cpuset); in set_cpu_affinity()
84 if (sched_setaffinity(getpid(), sizeof(cpu_set_t), &cpuset) < 0) { in set_cpu_affinity()
/linux/tools/testing/selftests/intel_pstate/
H A Daperf.c31 cpu_set_t cpuset; in main() local
54 CPU_ZERO(&cpuset); in main()
55 CPU_SET(cpu, &cpuset); in main()
57 if (sched_setaffinity(0, sizeof(cpu_set_t), &cpuset)) { in main()
/linux/tools/testing/selftests/mm/
H A Dhugetlb_reparenting_test.sh131 echo 0 >$CGROUP_ROOT/a/cpuset.mems
132 echo 0 >$CGROUP_ROOT/a/cpuset.cpus
138 echo 0 >$CGROUP_ROOT/a/b/cpuset.mems
139 echo 0 >$CGROUP_ROOT/a/b/cpuset.cpus
154 echo 0 >$CGROUP_ROOT/$cgroup/cpuset.mems
155 echo 0 >$CGROUP_ROOT/$cgroup/cpuset.cpus

123