/linux/kernel/irq/ |
A D | irqdesc.c | 82 const struct cpumask *affinity) in desc_smp_init() argument 84 if (!affinity) in desc_smp_init() 85 affinity = irq_default_affinity; in desc_smp_init() 86 cpumask_copy(desc->irq_common_data.affinity, affinity); in desc_smp_init() 476 if (affinity) { in alloc_descs() 487 if (affinity) { in alloc_descs() 488 if (affinity->is_managed) { in alloc_descs() 492 mask = &affinity->mask; in alloc_descs() 494 affinity++; in alloc_descs() 839 if (affinity) in irq_set_percpu_devid_partition() [all …]
|
A 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_any_and(affinity, cpu_online_mask) >= nr_cpu_ids) { 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() 192 const struct cpumask *affinity = irq_data_get_affinity_mask(data); in irq_restore_affinity_of_irq() local 195 !irq_data_get_irq_chip(data) || !cpumask_test_cpu(cpu, affinity)) in irq_restore_affinity_of_irq() 211 irq_set_affinity_locked(data, affinity, false); in irq_restore_affinity_of_irq()
|
A D | msi.c | 33 const struct irq_affinity_desc *affinity) in alloc_msi_entry() argument 44 if (affinity) { in alloc_msi_entry() 45 desc->affinity = kmemdup(affinity, in alloc_msi_entry() 46 nvec * sizeof(*desc->affinity), GFP_KERNEL); in alloc_msi_entry() 47 if (!desc->affinity) { in alloc_msi_entry() 58 kfree(entry->affinity); in free_msi_entry() 558 desc->affinity); in __msi_domain_alloc_irqs()
|
/linux/tools/testing/selftests/rseq/ |
A 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() 35 sched_setaffinity(0, sizeof(affinity), &affinity); in test_cpu_pointer()
|
/linux/drivers/net/ethernet/mellanox/mlx5/core/ |
A D | pci_irq.c | 305 struct cpumask *affinity) in irq_pool_create_irq() argument 318 cpumask_copy(irq->mask, affinity); in irq_pool_create_irq() 325 struct cpumask *affinity) in irq_pool_find_least_loaded() argument 335 if (!cpumask_equal(iter->mask, affinity)) in irq_pool_find_least_loaded() 347 struct cpumask *affinity) in irq_pool_request_affinity() argument 385 struct cpumask *affinity) in irq_pool_request_vector() argument 396 if (IS_ERR(irq) || !affinity) in irq_pool_request_vector() 398 cpumask_copy(irq->mask, affinity); in irq_pool_request_vector() 409 int i, struct cpumask *affinity) in find_sf_irq_pool() argument 436 struct cpumask *affinity) in mlx5_irq_request() argument [all …]
|
/linux/Documentation/arm64/ |
A 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 92 affinity of the task using the saved mask if it was previously valid. 95 with the affinity unchanged. 99 affinity for the task is updated and any saved mask from a prior [all …]
|
/linux/tools/perf/util/ |
A 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);
|
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() 65 void affinity__cleanup(struct affinity *a) in affinity__cleanup()
|
A D | mmap.c | 97 static int perf_mmap__aio_bind(struct mmap *map, int idx, int 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 int 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() 265 if (mp->affinity == PERF_AFFINITY_NODE && cpu__max_node() > 1) in perf_mmap__setup_affinity_mask() 267 else if (mp->affinity == PERF_AFFINITY_CPU) in perf_mmap__setup_affinity_mask() 281 if (mp->affinity != PERF_AFFINITY_SYS && in mmap__mmap()
|
A D | evlist.c | 403 struct affinity affinity; in __evlist__disable() local 407 if (affinity__setup(&affinity) < 0) in __evlist__disable() 413 affinity__set(&affinity, cpu); in __evlist__disable() 433 affinity__cleanup(&affinity); in __evlist__disable() 465 struct affinity affinity; in __evlist__enable() local 472 affinity__set(&affinity, cpu); in __evlist__enable() 484 affinity__cleanup(&affinity); in __evlist__enable() 944 .affinity = affinity, in evlist__mmap_ex() 1267 struct affinity affinity; in evlist__close() local 1283 affinity__set(&affinity, cpu); in evlist__close() [all …]
|
/linux/tools/virtio/ringtest/ |
A D | run-on-all.sh | 20 "$@" --host-affinity $HOST_AFFINITY --guest-affinity $cpu 24 "$@" --host-affinity $HOST_AFFINITY
|
/linux/drivers/infiniband/hw/hfi1/ |
A D | affinity.c | 965 struct hfi1_affinity_node_list *affinity) in find_hw_thread_mask() argument 969 affinity->num_core_siblings / in find_hw_thread_mask() 972 cpumask_copy(hw_thread_mask, &affinity->proc.mask); in find_hw_thread_mask() 973 if (affinity->num_core_siblings > 0) { in find_hw_thread_mask() 1003 struct cpu_mask_set *set = &affinity->proc; in hfi1_get_proc_affinity() 1061 mutex_lock(&affinity->lock); in hfi1_get_proc_affinity() 1091 if (affinity->num_core_siblings > 0) { in hfi1_get_proc_affinity() 1167 mutex_unlock(&affinity->lock); in hfi1_get_proc_affinity() 1184 struct cpu_mask_set *set = &affinity->proc; in hfi1_put_proc_affinity() 1189 mutex_lock(&affinity->lock); in hfi1_put_proc_affinity() [all …]
|
/linux/Documentation/core-api/irq/ |
A 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/arch/arm64/kernel/ |
A D | setup.c | 109 u32 i, affinity, fs[4], bits[4], ls; in smp_build_mpidr_hash() local 123 affinity = MPIDR_AFFINITY_LEVEL(mask, i); in smp_build_mpidr_hash() 129 ls = fls(affinity); in smp_build_mpidr_hash() 130 fs[i] = affinity ? ffs(affinity) - 1 : 0; in smp_build_mpidr_hash()
|
/linux/Documentation/translations/zh_CN/core-api/irq/ |
A D | irq-affinity.rst | 3 :Original: Documentation/core-api/irq/irq-affinity.rst 9 .. _cn_irq-affinity.rst: 23 (IRQ affinity),那么所有cpu的默认值将保持不变(即关联到所有CPU).
|
/linux/arch/alpha/kernel/ |
A 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()
|
A 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/drivers/irqchip/ |
A D | irq-bcm7038-l1.c | 48 u8 affinity[MAX_WORDS * IRQS_PER_WORD]; member 180 __bcm7038_l1_unmask(d, intc->affinity[d->hwirq]); in bcm7038_l1_unmask() 190 __bcm7038_l1_mask(d, intc->affinity[d->hwirq]); in bcm7038_l1_mask() 209 was_disabled = !!(intc->cpus[intc->affinity[hw]]->mask_cache[word] & in bcm7038_l1_set_affinity() 211 __bcm7038_l1_mask(d, intc->affinity[hw]); in bcm7038_l1_set_affinity() 212 intc->affinity[hw] = first_cpu; in bcm7038_l1_set_affinity()
|
/linux/tools/testing/selftests/bpf/ |
A D | bench.c | 19 .affinity = false, 221 env.affinity = true; in parse_arg() 224 env.affinity = true; in parse_arg() 232 env.affinity = true; in parse_arg() 441 if (env.affinity) in setup_benchmark() 460 if (env.affinity) in setup_benchmark()
|
/linux/drivers/iommu/ |
A D | hyperv-iommu.c | 94 cpumask_copy(desc->irq_common_data.affinity, &ioapic_max_cpumask); in hyperv_irq_remapping_alloc() 197 struct cpumask *affinity; in hyperv_root_ir_compose_msi_msg() local 204 affinity = irq_data_get_effective_affinity_mask(irq_data); in hyperv_root_ir_compose_msi_msg() 205 cpu = cpumask_first_and(affinity, cpu_online_mask); in hyperv_root_ir_compose_msi_msg()
|
/linux/tools/testing/selftests/rcutorture/bin/ |
A D | kvm-test-1-run-batch.sh | 64 print "echo No CPU-affinity information, so no taskset command."; 70 print "echo " scenario ": Bogus CPU-affinity information, so no taskset command.";
|
/linux/Documentation/devicetree/bindings/interrupt-controller/ |
A D | arm,gic-v3.yaml | 43 If the system requires describing PPI affinity, then the value must 133 PPI affinity can be expressed as a single "ppi-partitions" node, 139 affinity: 146 - affinity 275 affinity = <&cpu0 &cpu2>; 279 affinity = <&cpu1 &cpu3>;
|
/linux/include/linux/ |
A D | irq.h | 154 cpumask_var_t affinity; member 726 const struct cpumask *affinity); 728 struct cpumask *affinity); 885 return d ? d->common->affinity : NULL; in irq_get_affinity_mask() 890 return d->common->affinity; in irq_data_get_affinity_mask() 912 return d->common->affinity; in irq_data_get_effective_affinity_mask() 927 const struct irq_affinity_desc *affinity); 931 const struct irq_affinity_desc *affinity);
|
/linux/include/ras/ |
A 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/Documentation/ia64/ |
A D | irq-redir.rst | 2 IRQ affinity on IA64 platforms 10 that described in Documentation/core-api/irq/irq-affinity.rst for i386 systems. 77 For systems like the NEC AzusA we get IRQ node-affinity for free. This
|