/linux-6.12.1/kernel/irq/ |
D | cpuhotplug.c | 58 const struct cpumask *affinity; in migrate_one_irq() local 105 affinity = irq_desc_get_pending_mask(desc); in migrate_one_irq() 107 affinity = irq_data_get_affinity_mask(d); in migrate_one_irq() 113 if (!cpumask_intersects(affinity, cpu_online_mask)) { in migrate_one_irq() 123 affinity = cpu_online_mask; in migrate_one_irq() 132 err = irq_do_set_affinity(d, affinity, false); in migrate_one_irq() 139 if (err == -ENOSPC && !irqd_affinity_is_managed(d) && affinity != cpu_online_mask) { in migrate_one_irq() 141 d->irq, cpumask_pr_args(affinity)); in migrate_one_irq() 143 affinity = cpu_online_mask; in migrate_one_irq() 146 err = irq_do_set_affinity(d, affinity, false); in migrate_one_irq() [all …]
|
D | irqdesc.c | 56 if (!zalloc_cpumask_var_node(&desc->irq_common_data.affinity, in alloc_masks() 63 free_cpumask_var(desc->irq_common_data.affinity); in alloc_masks() 73 free_cpumask_var(desc->irq_common_data.affinity); in alloc_masks() 81 const struct cpumask *affinity) in desc_smp_init() argument 83 if (!affinity) in desc_smp_init() 84 affinity = irq_default_affinity; in desc_smp_init() 85 cpumask_copy(desc->irq_common_data.affinity, affinity); in desc_smp_init() 100 free_cpumask_var(desc->irq_common_data.affinity); in free_masks() 110 desc_smp_init(struct irq_desc *desc, int node, const struct cpumask *affinity) { } in desc_smp_init() argument 115 const struct cpumask *affinity, struct module *owner) in desc_set_defaults() argument [all …]
|
D | irqdomain.c | 30 bool realloc, const struct irq_affinity_desc *affinity); 797 const struct irq_affinity_desc *affinity) in irq_create_mapping_affinity_locked() argument 806 affinity); in irq_create_mapping_affinity_locked() 836 const struct irq_affinity_desc *affinity) in irq_create_mapping_affinity() argument 857 virq = irq_create_mapping_affinity_locked(domain, hwirq, affinity); in irq_create_mapping_affinity() 1220 int node, const struct irq_affinity_desc *affinity) in irq_domain_alloc_descs() argument 1226 affinity); in irq_domain_alloc_descs() 1232 affinity); in irq_domain_alloc_descs() 1235 affinity); in irq_domain_alloc_descs() 1606 bool realloc, const struct irq_affinity_desc *affinity) in irq_domain_alloc_irqs_locked() argument [all …]
|
/linux-6.12.1/tools/testing/selftests/rseq/ |
D | basic_test.c | 18 cpu_set_t affinity, test_affinity; in test_cpu_pointer() local 21 sched_getaffinity(0, sizeof(affinity), &affinity); in test_cpu_pointer() 24 if (CPU_ISSET(i, &affinity)) { in test_cpu_pointer() 39 sched_setaffinity(0, sizeof(affinity), &affinity); in test_cpu_pointer()
|
/linux-6.12.1/tools/perf/util/ |
D | affinity.h | 7 struct affinity { struct 13 void affinity__cleanup(struct affinity *a); argument 14 void affinity__set(struct affinity *a, int cpu); 15 int affinity__setup(struct affinity *a);
|
D | affinity.c | 24 int affinity__setup(struct affinity *a) in affinity__setup() 48 void affinity__set(struct affinity *a, int cpu) in affinity__set() 71 static void __affinity__cleanup(struct affinity *a) in __affinity__cleanup() 81 void affinity__cleanup(struct affinity *a) in affinity__cleanup()
|
D | mmap.c | 97 static int perf_mmap__aio_bind(struct mmap *map, int idx, struct perf_cpu cpu, int affinity) in perf_mmap__aio_bind() argument 105 if (affinity != PERF_AFFINITY_SYS && cpu__max_node() > 1) { in perf_mmap__aio_bind() 141 struct perf_cpu cpu __maybe_unused, int affinity __maybe_unused) in perf_mmap__aio_bind() 175 ret = perf_mmap__aio_bind(map, i, map->core.cpu, mp->affinity); in perf_mmap__aio_mmap() 268 if (mp->affinity == PERF_AFFINITY_NODE && cpu__max_node() > 1) in perf_mmap__setup_affinity_mask() 270 else if (mp->affinity == PERF_AFFINITY_CPU) in perf_mmap__setup_affinity_mask() 284 if (mp->affinity != PERF_AFFINITY_SYS && in mmap__mmap()
|
D | evlist.h | 200 int affinity, int flush, int comp_level); 367 struct affinity *affinity; member 380 #define evlist__for_each_cpu(evlist_cpu_itr, evlist, affinity) \ argument 381 for ((evlist_cpu_itr) = evlist__cpu_begin(evlist, affinity); \ 386 struct evlist_cpu_iterator evlist__cpu_begin(struct evlist *evlist, struct affinity *affinity);
|
D | evlist.c | 405 struct evlist_cpu_iterator evlist__cpu_begin(struct evlist *evlist, struct affinity *affinity) in evlist__cpu_begin() argument 414 .affinity = affinity, in evlist__cpu_begin() 422 if (itr.affinity) { in evlist__cpu_begin() 424 affinity__set(itr.affinity, itr.cpu.cpu); in evlist__cpu_begin() 453 if (evlist_cpu_itr->affinity) in evlist_cpu_iterator__next() 454 affinity__set(evlist_cpu_itr->affinity, evlist_cpu_itr->cpu.cpu); in evlist_cpu_iterator__next() 499 struct affinity saved_affinity, *affinity = NULL; in __evlist__disable() local 506 affinity = &saved_affinity; in __evlist__disable() 511 evlist__for_each_cpu(evlist_cpu_itr, evlist, affinity) { in __evlist__disable() 529 affinity__cleanup(affinity); in __evlist__disable() [all …]
|
/linux-6.12.1/Documentation/arch/arm64/ |
D | asymmetric-32bit.rst | 51 CPU affinity. 68 On a homogeneous system, the CPU affinity of a task is preserved across 71 affinity mask contains 64-bit-only CPUs. In this situation, the kernel 72 determines the new affinity mask as follows: 74 1. If the 32-bit-capable subset of the affinity mask is not empty, 75 then the affinity is restricted to that subset and the old affinity 84 affinity of the task is then changed to match the 32-bit-capable 87 3. On failure (i.e. out of memory), the affinity is changed to the set 91 invalidate the affinity mask saved in (1) and attempt to restore the CPU 92 affinity of the task using the saved mask if it was previously valid. [all …]
|
/linux-6.12.1/tools/virtio/ringtest/ |
D | run-on-all.sh | 20 "$@" --host-affinity $HOST_AFFINITY --guest-affinity $cpu 24 "$@" --host-affinity $HOST_AFFINITY
|
/linux-6.12.1/drivers/infiniband/hw/hfi1/ |
D | affinity.c | 964 struct hfi1_affinity_node_list *affinity) in find_hw_thread_mask() argument 968 affinity->num_core_siblings / in find_hw_thread_mask() 971 cpumask_copy(hw_thread_mask, &affinity->proc.mask); in find_hw_thread_mask() 972 if (affinity->num_core_siblings > 0) { in find_hw_thread_mask() 1001 struct hfi1_affinity_node_list *affinity = &node_affinity; in hfi1_get_proc_affinity() local 1002 struct cpu_mask_set *set = &affinity->proc; in hfi1_get_proc_affinity() 1060 mutex_lock(&affinity->lock); in hfi1_get_proc_affinity() 1090 if (affinity->num_core_siblings > 0) { in hfi1_get_proc_affinity() 1091 for (i = 0; i < affinity->num_core_siblings; i++) { in hfi1_get_proc_affinity() 1092 find_hw_thread_mask(i, hw_thread_mask, affinity); in hfi1_get_proc_affinity() [all …]
|
/linux-6.12.1/arch/arm64/kernel/ |
D | setup.c | 112 u32 i, affinity, fs[4], bits[4], ls; in smp_build_mpidr_hash() local 126 affinity = MPIDR_AFFINITY_LEVEL(mask, i); in smp_build_mpidr_hash() 132 ls = fls(affinity); in smp_build_mpidr_hash() 133 fs[i] = affinity ? ffs(affinity) - 1 : 0; in smp_build_mpidr_hash()
|
/linux-6.12.1/Documentation/core-api/irq/ |
D | irq-affinity.rst | 2 SMP IRQ affinity 14 IRQ affinity then the value will not change from the default of all cpus. 16 /proc/irq/default_smp_affinity specifies default affinity mask that applies 17 to all non-active IRQs. Once IRQ is allocated/activated its affinity bitmask
|
/linux-6.12.1/Documentation/translations/zh_CN/core-api/irq/ |
D | irq-affinity.rst | 3 :Original: Documentation/core-api/irq/irq-affinity.rst 9 .. _cn_irq-affinity.rst: 23 (IRQ affinity),那么所有cpu的默认值将保持不变(即关联到所有CPU).
|
/linux-6.12.1/arch/alpha/kernel/ |
D | sys_dp264.c | 136 cpu_set_irq_affinity(unsigned int irq, cpumask_t affinity) in cpu_set_irq_affinity() argument 142 if (cpumask_test_cpu(cpu, &affinity)) in cpu_set_irq_affinity() 151 dp264_set_affinity(struct irq_data *d, const struct cpumask *affinity, in dp264_set_affinity() argument 155 cpu_set_irq_affinity(d->irq, *affinity); in dp264_set_affinity() 163 clipper_set_affinity(struct irq_data *d, const struct cpumask *affinity, in clipper_set_affinity() argument 167 cpu_set_irq_affinity(d->irq - 16, *affinity); in clipper_set_affinity()
|
D | sys_titan.c | 135 titan_cpu_set_irq_affinity(unsigned int irq, cpumask_t affinity) in titan_cpu_set_irq_affinity() argument 140 if (cpumask_test_cpu(cpu, &affinity)) in titan_cpu_set_irq_affinity() 149 titan_set_irq_affinity(struct irq_data *d, const struct cpumask *affinity, in titan_set_irq_affinity() argument 154 titan_cpu_set_irq_affinity(irq - 16, *affinity); in titan_set_irq_affinity()
|
/linux-6.12.1/tools/testing/selftests/rcutorture/bin/ |
D | kvm-test-1-run-batch.sh | 63 print "echo No CPU-affinity information, so no taskset command."; 69 print "echo " scenario ": Bogus CPU-affinity information, so no taskset command.";
|
/linux-6.12.1/drivers/irqchip/ |
D | irq-bcm7038-l1.c | 47 u8 affinity[MAX_WORDS * IRQS_PER_WORD]; member 179 __bcm7038_l1_unmask(d, intc->affinity[d->hwirq]); in bcm7038_l1_unmask() 189 __bcm7038_l1_mask(d, intc->affinity[d->hwirq]); in bcm7038_l1_mask() 208 was_disabled = !!(intc->cpus[intc->affinity[hw]]->mask_cache[word] & in bcm7038_l1_set_affinity() 210 __bcm7038_l1_mask(d, intc->affinity[hw]); in bcm7038_l1_set_affinity() 211 intc->affinity[hw] = first_cpu; in bcm7038_l1_set_affinity()
|
/linux-6.12.1/tools/perf/ |
D | builtin-record.c | 98 struct mmap_cpu_mask affinity; member 1304 if (opts->affinity != PERF_AFFINITY_SYS) in record__mmap_evlist() 1310 opts->nr_cblocks, opts->affinity, in record__mmap_evlist() 1517 if (rec->opts.affinity != PERF_AFFINITY_SYS && in record__adjust_affinity() 1518 !bitmap_equal(thread->mask->affinity.bits, map->affinity_mask.bits, in record__adjust_affinity() 1519 thread->mask->affinity.nbits)) { in record__adjust_affinity() 1520 bitmap_zero(thread->mask->affinity.bits, thread->mask->affinity.nbits); in record__adjust_affinity() 1521 bitmap_or(thread->mask->affinity.bits, thread->mask->affinity.bits, in record__adjust_affinity() 1522 map->affinity_mask.bits, thread->mask->affinity.nbits); in record__adjust_affinity() 1523 sched_setaffinity(0, MMAP_CPU_MASK_BYTES(&thread->mask->affinity), in record__adjust_affinity() [all …]
|
/linux-6.12.1/arch/arm64/boot/dts/apple/ |
D | t6001.dtsi | 52 e-core-pmu-affinity { 57 p-core-pmu-affinity {
|
/linux-6.12.1/include/ras/ |
D | ras_event.h | 182 __field(u8, affinity) 187 __entry->affinity = proc->affinity_level; 189 __entry->affinity = ~0; 206 __entry->affinity, __entry->mpidr, __entry->midr,
|
/linux-6.12.1/tools/testing/selftests/bpf/ |
D | bench.c | 19 .affinity = false, 344 env.affinity = true; in parse_arg() 350 env.affinity = true; in parse_arg() 358 env.affinity = true; in parse_arg() 665 if (env.affinity) in setup_benchmark() 688 if (env.affinity) in setup_benchmark()
|
/linux-6.12.1/Documentation/core-api/ |
D | workqueue.rst | 368 An unbound workqueue groups CPUs according to its affinity scope to improve 369 cache locality. For example, if a workqueue is using the default affinity 376 Workqueue currently supports the following affinity scopes. 394 cases. This is the default affinity scope. 403 The default affinity scope can be changed with the module parameter 404 ``workqueue.default_affinity_scope`` and a specific workqueue's affinity 407 If ``WQ_SYSFS`` is set, the workqueue will have the following affinity scope 412 Read to see the current affinity scope. Write to change. 418 0 by default indicating that affinity scopes are not strict. When a work 420 that the worker is inside its affinity scope, which is called [all …]
|
/linux-6.12.1/arch/sparc/kernel/ |
D | leon_kernel.c | 107 static int irq_choose_cpu(const struct cpumask *affinity) in irq_choose_cpu() argument 109 unsigned int cpu = cpumask_first_and(affinity, cpu_online_mask); in irq_choose_cpu() 111 if (cpumask_subset(cpu_online_mask, affinity) || cpu >= nr_cpu_ids) in irq_choose_cpu() 117 #define irq_choose_cpu(affinity) boot_cpu_id argument
|