| /linux/kernel/irq/ |
| H A D | cpuhotplug.c | 19 /* For !GENERIC_IRQ_EFFECTIVE_AFF_MASK this looks at general affinity mask */ 28 * which do not implement effective affinity, but the architecture has in irq_needs_fixup() 29 * enabled the config switch. Use the general affinity mask instead. in irq_needs_fixup() 45 pr_warn("Eff. affinity %*pbl of IRQ %u contains only offline CPUs after offlining CPU %u\n", in irq_needs_fixup() 58 const struct cpumask *affinity; in migrate_one_irq() local 64 * still in the radix tree. Also if the chip has no affinity setter, in migrate_one_irq() 100 * mask, so the last change of the affinity does not get lost. If in migrate_one_irq() 102 * any online CPU, use the current affinity mask. in migrate_one_irq() 105 affinity = irq_desc_get_pending_mask(desc); in migrate_one_irq() 107 affinity in migrate_one_irq() 207 const struct cpumask *affinity = irq_data_get_affinity_mask(data); irq_restore_affinity_of_irq() local [all...] |
| H A D | irqdesc.c | 57 if (!zalloc_cpumask_var_node(&desc->irq_common_data.affinity, in alloc_masks() 64 free_cpumask_var(desc->irq_common_data.affinity); in alloc_masks() 74 free_cpumask_var(desc->irq_common_data.affinity); in alloc_masks() 86 static void desc_smp_init(struct irq_desc *desc, int node, const struct cpumask *affinity) in desc_smp_init() 88 if (!affinity) in desc_smp_init() 89 affinity = irq_default_affinity; in desc_smp_init() 90 cpumask_copy(desc->irq_common_data.affinity, affinity); in desc_smp_init() 106 free_cpumask_var(desc->irq_common_data.affinity); 116 desc_smp_init(struct irq_desc *desc, int node, const struct cpumask *affinity) { } in desc_set_defaults() argument 82 desc_smp_init(struct irq_desc * desc,int node,const struct cpumask * affinity) desc_smp_init() argument 111 desc_smp_init(struct irq_desc * desc,int node,const struct cpumask * affinity) desc_smp_init() argument 212 init_desc(struct irq_desc * desc,int irq,int node,unsigned int flags,const struct cpumask * affinity,struct module * owner) init_desc() argument 433 alloc_desc(int irq,int node,unsigned int flags,const struct cpumask * affinity,struct module * owner) alloc_desc() argument 497 alloc_descs(unsigned int start,unsigned int cnt,int node,const struct irq_affinity_desc * affinity,struct module * owner) alloc_descs() argument 631 alloc_descs(unsigned int start,unsigned int cnt,int node,const struct irq_affinity_desc * affinity,struct module * owner) alloc_descs() argument 805 __irq_alloc_descs(int irq,unsigned int from,unsigned int cnt,int node,struct module * owner,const struct irq_affinity_desc * affinity) __irq_alloc_descs() argument [all...] |
| H A D | manage.c | 166 * irq_can_set_affinity - Check if the affinity of a given irq can be set 176 * irq_can_set_affinity_usr - Check if affinity of a irq can be set from user space in irq_can_set_affinity_usr() 191 * irq_set_thread_affinity - Notify irq threads to adjust affinity in irq_set_thread_affinity() 192 * @desc: irq descriptor which has affinity changed in irq_set_thread_affinity() 194 * Just set IRQTF_AFFINITY and delegate the affinity setting to the in irq_set_thread_affinity() 223 pr_warn_once("irq_chip %s did not update eff. affinity mask of irq %u\n", in irq_do_set_affinity() 245 * it check whether the requested affinity mask intersects with in irq_do_set_affinity() 248 * the affinity setter from routing the interrupt to an isolated in irq_do_set_affinity() 257 * If all housekeeping CPUs in the affinity mask are offline, the in irq_do_set_affinity() 259 * housekeeping CPU which belongs to the affinity mas in irq_do_set_affinity() 398 irq_update_affinity_desc(unsigned int irq,struct irq_affinity_desc * affinity) irq_update_affinity_desc() argument 2486 create_percpu_irqaction(irq_handler_t handler,unsigned long flags,const char * devname,const cpumask_t * affinity,void __percpu * dev_id) create_percpu_irqaction() argument 2534 __request_percpu_irq(unsigned int irq,irq_handler_t handler,unsigned long flags,const char * devname,const cpumask_t * affinity,void __percpu * dev_id) __request_percpu_irq() argument 2595 request_percpu_nmi(unsigned int irq,irq_handler_t handler,const char * name,const struct cpumask * affinity,void __percpu * dev_id) request_percpu_nmi() argument [all...] |
| H A D | irq_test.c | 120 struct irq_affinity_desc affinity = { in irq_shutdown_depth_test() local 128 virq = irq_test_setup_fake_irq(test, &affinity); in irq_shutdown_depth_test() 172 struct irq_affinity_desc affinity = { in irq_cpuhotplug_test() local 185 cpumask_copy(&affinity.mask, cpumask_of(1)); in irq_cpuhotplug_test() 187 virq = irq_test_setup_fake_irq(test, &affinity); in irq_cpuhotplug_test()
|
| /linux/tools/testing/selftests/rseq/ |
| H 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() 39 sched_setaffinity(0, sizeof(affinity), &affinity); in test_cpu_pointer()
|
| /linux/tools/perf/util/ |
| H A D | affinity.h | 8 struct affinity { struct 14 void affinity__cleanup(struct affinity *a); argument 15 void affinity__set(struct affinity *a, int cpu); 16 int affinity__setup(struct affinity *a);
|
| H A D | affinity.c | 25 int affinity__setup(struct affinity *a) in affinity__setup() 49 void affinity__set(struct affinity *a, int cpu) in affinity__set() 72 static void __affinity__cleanup(struct affinity *a) in __affinity__cleanup() 82 void affinity__cleanup(struct affinity *a) in affinity__cleanup()
|
| H A D | mmap.c | 98 static int perf_mmap__aio_bind(struct mmap *map, int idx, struct perf_cpu cpu, int affinity) in perf_mmap__aio_bind() argument 106 if (affinity != PERF_AFFINITY_SYS && cpu__max_node() > 1) { in perf_mmap__aio_bind() 142 struct perf_cpu cpu __maybe_unused, int affinity __maybe_unused) in perf_mmap__aio_bind() 176 ret = perf_mmap__aio_bind(map, i, map->core.cpu, mp->affinity); in perf_mmap__aio_mmap() 269 if (mp->affinity == PERF_AFFINITY_NODE && cpu__max_node() > 1) in perf_mmap__setup_affinity_mask() 271 else if (mp->affinity == PERF_AFFINITY_CPU) in perf_mmap__setup_affinity_mask() 285 if (mp->affinity != PERF_AFFINITY_SYS && in mmap__mmap()
|
| H A D | evlist.h | 198 int affinity, int flush, int comp_level); 365 struct affinity *affinity; member 378 #define evlist__for_each_cpu(evlist_cpu_itr, evlist, affinity) \ argument 379 for ((evlist_cpu_itr) = evlist__cpu_begin(evlist, affinity); \ 384 struct evlist_cpu_iterator evlist__cpu_begin(struct evlist *evlist, struct affinity *affinity);
|
| H A D | evlist.c | 362 struct evlist_cpu_iterator evlist__cpu_begin(struct evlist *evlist, struct affinity *affinity) in evlist__cpu_begin() argument 371 .affinity = affinity, in evlist__cpu_begin() 379 if (itr.affinity) { in evlist__cpu_begin() 381 affinity__set(itr.affinity, itr.cpu.cpu); in evlist__cpu_begin() 410 if (evlist_cpu_itr->affinity) in evlist_cpu_iterator__next() 411 affinity__set(evlist_cpu_itr->affinity, evlist_cpu_itr->cpu.cpu); in evlist_cpu_iterator__next() 456 struct affinity saved_affinity, *affinity = NULL; in __evlist__disable() local 463 affinity = &saved_affinity; in __evlist__disable() 468 evlist__for_each_cpu(evlist_cpu_itr, evlist, affinity) { in __evlist__disable() 486 affinity__cleanup(affinity); in __evlist__disable() [all …]
|
| /linux/tools/virtio/ringtest/ |
| H A D | run-on-all.sh | 20 "$@" --host-affinity $HOST_AFFINITY --guest-affinity $cpu 24 "$@" --host-affinity $HOST_AFFINITY
|
| /linux/arch/arm64/kernel/ |
| H A D | setup.c | 113 u32 i, affinity, fs[4], bits[4], ls; in smp_build_mpidr_hash() local 127 affinity = MPIDR_AFFINITY_LEVEL(mask, i); in smp_build_mpidr_hash() 133 ls = fls(affinity); in smp_build_mpidr_hash() 134 fs[i] = affinity ? ffs(affinity) - 1 : 0; in smp_build_mpidr_hash()
|
| /linux/kernel/ |
| H A D | kthread.c | 384 cpumask_var_t affinity; in kthread_affine_node() 389 if (!zalloc_cpumask_var(&affinity, GFP_KERNEL)) { in kthread_affine_node() 404 kthread_fetch_affinity(kthread, affinity); in kthread_affine_node() 405 set_cpus_allowed_ptr(current, affinity); in kthread_affine_node() 408 free_cpumask_var(affinity); in kthread_affine_node() 457 * Apply default node affinity if no call to kthread_bind[_mask]() nor in kthread() 572 * in @node, to get NUMA affinity for kthread stack, or else give NUMA_NO_NODE. 860 * kthread_affine_preferred - Define a kthread's preferred affinity in kthread_affine_preferred() 865 * Similar to kthread_bind_mask() except that the affinity is not a requirement in kthread_affine_preferred() 869 * Returns 0 if the affinity ha in kthread_affine_preferred() 381 cpumask_var_t affinity; kthread_affine_node() local 857 cpumask_var_t affinity; kthread_affine_preferred() local 902 cpumask_var_t affinity; kthreads_online_cpu() local [all...] |
| /linux/Documentation/translations/zh_CN/core-api/irq/ |
| H 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/ |
| H 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()
|
| H 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/ |
| H A D | irq-bcm7038-l1.c | 47 u8 affinity[MAX_WORDS * IRQS_PER_WORD]; member 173 __bcm7038_l1_unmask(d, intc->affinity[d->hwirq]); in bcm7038_l1_unmask() 183 __bcm7038_l1_mask(d, intc->affinity[d->hwirq]); in bcm7038_l1_mask() 202 was_disabled = !!(intc->cpus[intc->affinity[hw]]->mask_cache[word] & in bcm7038_l1_set_affinity() 204 __bcm7038_l1_mask(d, intc->affinity[hw]); in bcm7038_l1_set_affinity() 205 intc->affinity[hw] = first_cpu; in bcm7038_l1_set_affinity()
|
| /linux/tools/perf/ |
| H A D | builtin-record.c | 100 struct mmap_cpu_mask affinity; member 1291 if (opts->affinity != PERF_AFFINITY_SYS) in record__mmap_evlist() 1297 opts->nr_cblocks, opts->affinity, in record__mmap_evlist() 1578 if (rec->opts.affinity != PERF_AFFINITY_SYS && in record__adjust_affinity() 1579 !bitmap_equal(thread->mask->affinity.bits, map->affinity_mask.bits, in record__adjust_affinity() 1580 thread->mask->affinity.nbits)) { in record__adjust_affinity() 1581 bitmap_zero(thread->mask->affinity.bits, thread->mask->affinity.nbits); in record__adjust_affinity() 1582 bitmap_or(thread->mask->affinity.bits, thread->mask->affinity.bits, in record__adjust_affinity() 1583 map->affinity_mask.bits, thread->mask->affinity.nbits); in record__adjust_affinity() 1584 sched_setaffinity(0, MMAP_CPU_MASK_BYTES(&thread->mask->affinity), in record__adjust_affinity() [all …]
|
| /linux/drivers/resctrl/ |
| H A D | mpam_devices.c | 449 cpumask_t *affinity) in mpam_get_cpumask_from_cache_id() argument 451 return acpi_pptt_get_cpumask_from_cache_id(cache_id, affinity); in mpam_get_cpumask_from_cache_id() 458 static void get_cpumask_from_node_id(u32 node_id, cpumask_t *affinity) in get_cpumask_from_node_id() argument 464 cpumask_set_cpu(cpu, affinity); in get_cpumask_from_node_id() 468 static int mpam_ris_get_affinity(struct mpam_msc *msc, cpumask_t *affinity, in mpam_ris_get_affinity() argument 478 affinity); in mpam_ris_get_affinity() 485 if (cpumask_empty(affinity)) in mpam_ris_get_affinity() 490 get_cpumask_from_node_id(comp->comp_id, affinity); in mpam_ris_get_affinity() 497 cpumask_and(affinity, affinity, &msc->accessibility); in mpam_ris_get_affinity() 545 err = mpam_ris_get_affinity(msc, &ris->affinity, type, class, comp); in mpam_ris_create_locked() [all …]
|
| H A D | mpam_internal.h | 245 cpumask_t affinity; member 282 cpumask_t affinity; member 323 cpumask_t affinity; member 392 cpumask_t *affinity);
|
| /linux/include/ras/ |
| H A D | ras_event.h | 195 __field(u8, affinity) 208 __entry->affinity = proc->affinity_level; 210 __entry->affinity = ~0; 233 TP_printk("cpu: %d; error: %d; affinity level: %d; MPIDR: %016llx; MIDR: %016llx; " 238 __entry->affinity, __entry->mpidr, __entry->midr,
|
| /linux/tools/testing/selftests/bpf/ |
| H A D | bench.c | 19 .affinity = false, 266 { "affinity", 'a', NULL, 0, "Set consumer/producer thread affinity"}, 269 { "prod-affinity", ARG_PROD_AFFINITY_SET, "CPUSET", 0, 270 "Set of CPUs for producer threads; implies --affinity"}, 271 { "cons-affinity", ARG_CONS_AFFINITY_SET, "CPUSET", 0, 272 "Set of CPUs for consumer threads; implies --affinity"}, 349 env.affinity = true; in parse_arg() 358 env.affinity = true; in parse_arg() 366 env.affinity in parse_arg() [all...] |
| /linux/drivers/iommu/ |
| H A D | hyperv-iommu.c | 198 const struct cpumask *affinity; in hyperv_root_ir_compose_msi_msg() local 205 affinity = irq_data_get_effective_affinity_mask(irq_data); in hyperv_root_ir_compose_msi_msg() 206 cpu = cpumask_first_and(affinity, cpu_online_mask); in hyperv_root_ir_compose_msi_msg()
|
| /linux/Documentation/core-api/irq/ |
| H A D | index.rst | 9 irq-affinity
|
| /linux/drivers/pci/msi/ |
| H A D | api.c | 354 if (!desc->affinity) in pci_irq_get_affinity() 362 return &desc->affinity[idx].mask; in pci_irq_get_affinity()
|