Home
last modified time | relevance | path

Searched refs:cpu (Results 1 – 25 of 3326) sorted by relevance

12345678910>>...134

/linux-6.6.21/drivers/cpufreq/
Dintel_pstate.c229 int cpu; member
284 int (*get_max)(int cpu);
285 int (*get_max_physical)(int cpu);
286 int (*get_min)(int cpu);
287 int (*get_turbo)(int cpu);
289 int (*get_cpu_scaling)(int cpu);
352 static void intel_pstate_set_itmt_prio(int cpu) in intel_pstate_set_itmt_prio() argument
358 ret = cppc_get_perf_caps(cpu, &cppc_perf); in intel_pstate_set_itmt_prio()
368 cppc_perf.highest_perf = HWP_HIGHEST_PERF(READ_ONCE(all_cpu_data[cpu]->hwp_cap_cached)); in intel_pstate_set_itmt_prio()
375 sched_set_itmt_core_prio(cppc_perf.highest_perf, cpu); in intel_pstate_set_itmt_prio()
[all …]
/linux-6.6.21/arch/arm/boot/dts/intel/axm/
Daxm5516-cpus.dtsi13 cpu-map {
16 cpu = <&CPU0>;
19 cpu = <&CPU1>;
22 cpu = <&CPU2>;
25 cpu = <&CPU3>;
30 cpu = <&CPU4>;
33 cpu = <&CPU5>;
36 cpu = <&CPU6>;
39 cpu = <&CPU7>;
44 cpu = <&CPU8>;
[all …]
/linux-6.6.21/arch/powerpc/kernel/
Dsmp.c286 void smp_muxed_ipi_set_message(int cpu, int msg) in smp_muxed_ipi_set_message() argument
288 struct cpu_messages *info = &per_cpu(ipi_message, cpu); in smp_muxed_ipi_set_message()
298 void smp_muxed_ipi_message_pass(int cpu, int msg) in smp_muxed_ipi_message_pass() argument
300 smp_muxed_ipi_set_message(cpu, msg); in smp_muxed_ipi_message_pass()
306 smp_ops->cause_ipi(cpu); in smp_muxed_ipi_message_pass()
360 static inline void do_message_pass(int cpu, int msg) in do_message_pass() argument
363 smp_ops->message_pass(cpu, msg); in do_message_pass()
366 smp_muxed_ipi_message_pass(cpu, msg); in do_message_pass()
370 void arch_smp_send_reschedule(int cpu) in arch_smp_send_reschedule() argument
373 do_message_pass(cpu, PPC_MSG_RESCHEDULE); in arch_smp_send_reschedule()
[all …]
Dtau_6xx.c55 static void set_thresholds(unsigned long cpu) in set_thresholds() argument
60 mtspr(SPRN_THRM1, THRM1_THRES(tau[cpu].low) | THRM1_V | maybe_tie | THRM1_TID); in set_thresholds()
63 mtspr(SPRN_THRM2, THRM1_THRES(tau[cpu].high) | THRM1_V | maybe_tie); in set_thresholds()
66 static void TAUupdate(int cpu) in TAUupdate() argument
77 if (tau[cpu].low >= step_size) { in TAUupdate()
78 tau[cpu].low -= step_size; in TAUupdate()
79 tau[cpu].high -= (step_size - window_expand); in TAUupdate()
81 tau[cpu].grew = 1; in TAUupdate()
88 if (tau[cpu].high <= 127 - step_size) { in TAUupdate()
89 tau[cpu].low += (step_size - window_expand); in TAUupdate()
[all …]
Dwatchdog.c148 int cpu = raw_smp_processor_id(); in wd_lockup_ipi() local
151 pr_emerg("CPU %d Hard LOCKUP\n", cpu); in wd_lockup_ipi()
153 cpu, tb, per_cpu(wd_timer_tb, cpu), in wd_lockup_ipi()
154 tb_to_ns(tb - per_cpu(wd_timer_tb, cpu)) / 1000000); in wd_lockup_ipi()
182 static bool set_cpu_stuck(int cpu) in set_cpu_stuck() argument
184 cpumask_set_cpu(cpu, &wd_smp_cpus_stuck); in set_cpu_stuck()
185 cpumask_clear_cpu(cpu, &wd_smp_cpus_pending); in set_cpu_stuck()
200 static void watchdog_smp_panic(int cpu) in watchdog_smp_panic() argument
213 if (cpumask_test_cpu(cpu, &wd_smp_cpus_pending)) in watchdog_smp_panic()
220 if (c == cpu) in watchdog_smp_panic()
[all …]
/linux-6.6.21/tools/testing/selftests/cpu-hotplug/
Dcpu-on-off-test.sh27 if ! ls $SYSFS/devices/system/cpu/cpu* > /dev/null 2>&1; then
28 echo $msg cpu hotplug is not supported >&2
33 online_cpus=`cat $SYSFS/devices/system/cpu/online`
41 present_cpus=`cat $SYSFS/devices/system/cpu/present`
47 offline_cpus=`cat $SYSFS/devices/system/cpu/offline`
63 for cpu in $SYSFS/devices/system/cpu/cpu*; do
64 if [ -f $cpu/online ] && grep -q $state $cpu/online; then
65 echo ${cpu##/*/cpu}
82 grep -q 1 $SYSFS/devices/system/cpu/cpu$1/online
87 grep -q 0 $SYSFS/devices/system/cpu/cpu$1/online
[all …]
/linux-6.6.21/drivers/base/
Darch_topology.c63 int cpu; in topology_set_scale_freq_source() local
74 for_each_cpu(cpu, cpus) { in topology_set_scale_freq_source()
75 sfd = rcu_dereference(*per_cpu_ptr(&sft_data, cpu)); in topology_set_scale_freq_source()
79 rcu_assign_pointer(per_cpu(sft_data, cpu), data); in topology_set_scale_freq_source()
80 cpumask_set_cpu(cpu, &scale_freq_counters_mask); in topology_set_scale_freq_source()
94 int cpu; in topology_clear_scale_freq_source() local
98 for_each_cpu(cpu, cpus) { in topology_clear_scale_freq_source()
99 sfd = rcu_dereference(*per_cpu_ptr(&sft_data, cpu)); in topology_clear_scale_freq_source()
102 rcu_assign_pointer(per_cpu(sft_data, cpu), NULL); in topology_clear_scale_freq_source()
103 cpumask_clear_cpu(cpu, &scale_freq_counters_mask); in topology_clear_scale_freq_source()
[all …]
Dcacheinfo.c25 #define ci_cacheinfo(cpu) (&per_cpu(ci_cpu_cacheinfo, cpu)) argument
26 #define cache_leaves(cpu) (ci_cacheinfo(cpu)->num_leaves) argument
27 #define per_cpu_cacheinfo(cpu) (ci_cacheinfo(cpu)->info_list) argument
28 #define per_cpu_cacheinfo_idx(cpu, idx) \ argument
29 (per_cpu_cacheinfo(cpu) + (idx))
34 struct cpu_cacheinfo *get_cpu_cacheinfo(unsigned int cpu) in get_cpu_cacheinfo() argument
36 return ci_cacheinfo(cpu); in get_cpu_cacheinfo()
57 bool last_level_cache_is_valid(unsigned int cpu) in last_level_cache_is_valid() argument
61 if (!cache_leaves(cpu)) in last_level_cache_is_valid()
64 llc = per_cpu_cacheinfo_idx(cpu, cache_leaves(cpu) - 1); in last_level_cache_is_valid()
[all …]
/linux-6.6.21/include/linux/
Dtopology.h94 static inline int cpu_to_node(int cpu) in cpu_to_node() argument
96 return per_cpu(numa_node, cpu); in cpu_to_node()
108 static inline void set_cpu_numa_node(int cpu, int node) in set_cpu_numa_node() argument
110 per_cpu(numa_node, cpu) = node; in set_cpu_numa_node()
151 static inline int cpu_to_mem(int cpu) in cpu_to_mem() argument
153 return per_cpu(_numa_mem_, cpu); in cpu_to_mem()
158 static inline void set_cpu_numa_mem(int cpu, int node) in set_cpu_numa_mem() argument
160 per_cpu(_numa_mem_, cpu) = node; in set_cpu_numa_mem()
175 static inline int cpu_to_mem(int cpu) in cpu_to_mem() argument
177 return cpu_to_node(cpu); in cpu_to_mem()
[all …]
/linux-6.6.21/Documentation/translations/zh_CN/scheduler/
Dsched-bwc.rst24 达“配额”微秒的CPU时间。当cgroup中的线程可运行时,该配额以时间片段的方式被分配到每个cpu
29 它以需求为基础被转移到cpu-local“筒仓”,在每次更新中转移的数量是可调整的,被描述为“片“(时
65 配额、周期和突发是在cpu子系统内通过cgroupfs管理的。
69 :ref:`Documentation/admin-guide/cgroup-v2.rst <cgroup-v2-cpu>`.
71 - cpu.cfs_quota_us:在一个时期内补充的运行时间(微秒)。
72 - cpu.cfs_period_us:一个周期的长度(微秒)。
73 - cpu.stat: 输出节流统计数据[下面进一步解释]
74 - cpu.cfs_burst_us:最大累积运行时间(微秒)。
78 cpu.cfs_period_us=100ms
79 cpu.cfs_quota_us=-1
[all …]
/linux-6.6.21/arch/microblaze/kernel/cpu/
Dcpuinfo-static.c23 void __init set_cpuinfo_static(struct cpuinfo *ci, struct device_node *cpu) in set_cpuinfo_static() argument
28 (fcpu(cpu, "xlnx,use-barrel") ? PVR0_USE_BARREL_MASK : 0) | in set_cpuinfo_static()
29 (fcpu(cpu, "xlnx,use-msr-instr") ? PVR2_USE_MSR_INSTR : 0) | in set_cpuinfo_static()
30 (fcpu(cpu, "xlnx,use-pcmp-instr") ? PVR2_USE_PCMP_INSTR : 0) | in set_cpuinfo_static()
31 (fcpu(cpu, "xlnx,use-div") ? PVR0_USE_DIV_MASK : 0); in set_cpuinfo_static()
43 ci->use_mult = fcpu(cpu, "xlnx,use-hw-mul"); in set_cpuinfo_static()
51 ci->use_fpu = fcpu(cpu, "xlnx,use-fpu"); in set_cpuinfo_static()
59 (fcpu(cpu, "xlnx,unaligned-exceptions") ? in set_cpuinfo_static()
61 (fcpu(cpu, "xlnx,ill-opcode-exception") ? in set_cpuinfo_static()
63 (fcpu(cpu, "xlnx,iopb-bus-exception") ? in set_cpuinfo_static()
[all …]
/linux-6.6.21/arch/arm/mach-tegra/
Dplatsmp.c36 static void tegra_secondary_init(unsigned int cpu) in tegra_secondary_init() argument
38 cpumask_set_cpu(cpu, &tegra_cpu_init_mask); in tegra_secondary_init()
42 static int tegra20_boot_secondary(unsigned int cpu, struct task_struct *idle) in tegra20_boot_secondary() argument
44 cpu = cpu_logical_map(cpu); in tegra20_boot_secondary()
54 tegra_put_cpu_in_reset(cpu); in tegra20_boot_secondary()
62 flowctrl_write_cpu_halt(cpu, 0); in tegra20_boot_secondary()
64 tegra_enable_cpu_clock(cpu); in tegra20_boot_secondary()
65 flowctrl_write_cpu_csr(cpu, 0); /* Clear flow controller CSR. */ in tegra20_boot_secondary()
66 tegra_cpu_out_of_reset(cpu); in tegra20_boot_secondary()
70 static int tegra30_boot_secondary(unsigned int cpu, struct task_struct *idle) in tegra30_boot_secondary() argument
[all …]
/linux-6.6.21/arch/powerpc/include/asm/
Dsmp.h34 extern int cpu_to_chip_id(int cpu);
44 void (*message_pass)(int cpu, int msg);
46 void (*cause_ipi)(int cpu);
48 int (*cause_nmi_ipi)(int cpu);
67 extern int smp_send_nmi_ipi(int cpu, void (*fn)(struct pt_regs *), u64 delay_us);
68 extern int smp_send_safe_nmi_ipi(int cpu, void (*fn)(struct pt_regs *), u64 delay_us);
78 void generic_cpu_die(unsigned int cpu);
79 void generic_set_cpu_dead(unsigned int cpu);
80 void generic_set_cpu_up(unsigned int cpu);
81 int generic_check_cpu_restart(unsigned int cpu);
[all …]
/linux-6.6.21/arch/arm/mach-meson/
Dplatsmp.c38 static struct reset_control *meson_smp_get_core_reset(int cpu) in meson_smp_get_core_reset() argument
40 struct device_node *np = of_get_cpu_node(cpu, 0); in meson_smp_get_core_reset()
45 static void meson_smp_set_cpu_ctrl(int cpu, bool on_off) in meson_smp_set_cpu_ctrl() argument
50 val |= BIT(cpu); in meson_smp_set_cpu_ctrl()
52 val &= ~BIT(cpu); in meson_smp_set_cpu_ctrl()
116 static void meson_smp_begin_secondary_boot(unsigned int cpu) in meson_smp_begin_secondary_boot() argument
125 sram_base + MESON_SMP_SRAM_CPU_CTRL_ADDR_REG(cpu)); in meson_smp_begin_secondary_boot()
131 scu_cpu_power_enable(scu_base, cpu); in meson_smp_begin_secondary_boot()
134 static int meson_smp_finalize_secondary_boot(unsigned int cpu) in meson_smp_finalize_secondary_boot() argument
139 while (readl(sram_base + MESON_SMP_SRAM_CPU_CTRL_ADDR_REG(cpu))) { in meson_smp_finalize_secondary_boot()
[all …]
/linux-6.6.21/arch/arm/mach-bcm/
Dplatsmp-brcmstb.c59 static int per_cpu_sw_state_rd(u32 cpu) in per_cpu_sw_state_rd() argument
61 sync_cache_r(SHIFT_PERCPU_PTR(&per_cpu_sw_state, per_cpu_offset(cpu))); in per_cpu_sw_state_rd()
62 return per_cpu(per_cpu_sw_state, cpu); in per_cpu_sw_state_rd()
65 static void per_cpu_sw_state_wr(u32 cpu, int val) in per_cpu_sw_state_wr() argument
68 per_cpu(per_cpu_sw_state, cpu) = val; in per_cpu_sw_state_wr()
69 sync_cache_w(SHIFT_PERCPU_PTR(&per_cpu_sw_state, per_cpu_offset(cpu))); in per_cpu_sw_state_wr()
72 static inline void per_cpu_sw_state_wr(u32 cpu, int val) { } in per_cpu_sw_state_wr() argument
75 static void __iomem *pwr_ctrl_get_base(u32 cpu) in pwr_ctrl_get_base() argument
78 base += (cpu_logical_map(cpu) * 4); in pwr_ctrl_get_base()
82 static u32 pwr_ctrl_rd(u32 cpu) in pwr_ctrl_rd() argument
[all …]
/linux-6.6.21/arch/x86/include/asm/
Dtopology.h48 extern int __cpu_to_node(int cpu);
51 extern int early_cpu_to_node(int cpu);
56 static inline int early_cpu_to_node(int cpu) in early_cpu_to_node() argument
58 return early_per_cpu(x86_cpu_to_node_map, cpu); in early_cpu_to_node()
94 static inline int early_cpu_to_node(int cpu) in early_cpu_to_node() argument
105 extern const struct cpumask *cpu_coregroup_mask(int cpu);
106 extern const struct cpumask *cpu_clustergroup_mask(int cpu);
108 #define topology_logical_package_id(cpu) (cpu_data(cpu).logical_proc_id) argument
109 #define topology_physical_package_id(cpu) (cpu_data(cpu).phys_proc_id) argument
110 #define topology_logical_die_id(cpu) (cpu_data(cpu).logical_die_id) argument
[all …]
/linux-6.6.21/arch/loongarch/kernel/
Dsmp.c81 unsigned int cpu, i; in show_ipi_list() local
85 for_each_online_cpu(cpu) in show_ipi_list()
86 seq_printf(p, "%10u ", per_cpu(irq_stat, cpu).ipi_irqs[i]); in show_ipi_list()
91 static inline void set_cpu_core_map(int cpu) in set_cpu_core_map() argument
95 cpumask_set_cpu(cpu, &cpu_core_setup_map); in set_cpu_core_map()
98 if (cpu_data[cpu].package == cpu_data[i].package) { in set_cpu_core_map()
99 cpumask_set_cpu(i, &cpu_core_map[cpu]); in set_cpu_core_map()
100 cpumask_set_cpu(cpu, &cpu_core_map[i]); in set_cpu_core_map()
105 static inline void set_cpu_sibling_map(int cpu) in set_cpu_sibling_map() argument
109 cpumask_set_cpu(cpu, &cpu_sibling_setup_map); in set_cpu_sibling_map()
[all …]
/linux-6.6.21/arch/x86/xen/
Dsmp.c33 void xen_smp_intr_free(unsigned int cpu) in xen_smp_intr_free() argument
35 kfree(per_cpu(xen_resched_irq, cpu).name); in xen_smp_intr_free()
36 per_cpu(xen_resched_irq, cpu).name = NULL; in xen_smp_intr_free()
37 if (per_cpu(xen_resched_irq, cpu).irq >= 0) { in xen_smp_intr_free()
38 unbind_from_irqhandler(per_cpu(xen_resched_irq, cpu).irq, NULL); in xen_smp_intr_free()
39 per_cpu(xen_resched_irq, cpu).irq = -1; in xen_smp_intr_free()
41 kfree(per_cpu(xen_callfunc_irq, cpu).name); in xen_smp_intr_free()
42 per_cpu(xen_callfunc_irq, cpu).name = NULL; in xen_smp_intr_free()
43 if (per_cpu(xen_callfunc_irq, cpu).irq >= 0) { in xen_smp_intr_free()
44 unbind_from_irqhandler(per_cpu(xen_callfunc_irq, cpu).irq, NULL); in xen_smp_intr_free()
[all …]
Dsmp_pv.c61 int cpu; in cpu_bringup() local
74 cpu = smp_processor_id(); in cpu_bringup()
75 smp_store_cpu_info(cpu); in cpu_bringup()
76 cpu_data(cpu).x86_max_cores = 1; in cpu_bringup()
77 set_cpu_sibling_map(cpu); in cpu_bringup()
83 notify_cpu_starting(cpu); in cpu_bringup()
85 set_cpu_online(cpu, true); in cpu_bringup()
99 void xen_smp_intr_free_pv(unsigned int cpu) in xen_smp_intr_free_pv() argument
101 kfree(per_cpu(xen_irq_work, cpu).name); in xen_smp_intr_free_pv()
102 per_cpu(xen_irq_work, cpu).name = NULL; in xen_smp_intr_free_pv()
[all …]
/linux-6.6.21/kernel/
Dsmpboot.c30 struct task_struct *idle_thread_get(unsigned int cpu) in idle_thread_get() argument
32 struct task_struct *tsk = per_cpu(idle_threads, cpu); in idle_thread_get()
50 static __always_inline void idle_init(unsigned int cpu) in idle_init() argument
52 struct task_struct *tsk = per_cpu(idle_threads, cpu); in idle_init()
55 tsk = fork_idle(cpu); in idle_init()
57 pr_err("SMP: fork_idle() failed for CPU %u\n", cpu); in idle_init()
59 per_cpu(idle_threads, cpu) = tsk; in idle_init()
68 unsigned int cpu, boot_cpu; in idle_threads_init() local
72 for_each_possible_cpu(cpu) { in idle_threads_init()
73 if (cpu != boot_cpu) in idle_threads_init()
[all …]
/linux-6.6.21/arch/arm64/kernel/
Dsmp.c83 static void ipi_setup(int cpu);
86 static void ipi_teardown(int cpu);
87 static int op_cpu_kill(unsigned int cpu);
89 static inline int op_cpu_kill(unsigned int cpu) in op_cpu_kill() argument
100 static int boot_secondary(unsigned int cpu, struct task_struct *idle) in boot_secondary() argument
102 const struct cpu_operations *ops = get_cpu_ops(cpu); in boot_secondary()
105 return ops->cpu_boot(cpu); in boot_secondary()
112 int __cpu_up(unsigned int cpu, struct task_struct *idle) in __cpu_up() argument
125 ret = boot_secondary(cpu, idle); in __cpu_up()
127 pr_err("CPU%u: failed to boot: %d\n", cpu, ret); in __cpu_up()
[all …]
/linux-6.6.21/drivers/xen/
Dcpu_hotplug.c12 static void enable_hotplug_cpu(int cpu) in enable_hotplug_cpu() argument
14 if (!cpu_present(cpu)) in enable_hotplug_cpu()
15 xen_arch_register_cpu(cpu); in enable_hotplug_cpu()
17 set_cpu_present(cpu, true); in enable_hotplug_cpu()
20 static void disable_hotplug_cpu(int cpu) in disable_hotplug_cpu() argument
22 if (!cpu_is_hotpluggable(cpu)) in disable_hotplug_cpu()
25 if (cpu_online(cpu)) in disable_hotplug_cpu()
26 device_offline(get_cpu_device(cpu)); in disable_hotplug_cpu()
27 if (!cpu_online(cpu) && cpu_present(cpu)) { in disable_hotplug_cpu()
28 xen_arch_unregister_cpu(cpu); in disable_hotplug_cpu()
[all …]
/linux-6.6.21/arch/s390/include/asm/
Dtopology.h9 struct cpu;
29 #define topology_physical_package_id(cpu) (cpu_topology[cpu].socket_id) argument
30 #define topology_thread_id(cpu) (cpu_topology[cpu].thread_id) argument
31 #define topology_sibling_cpumask(cpu) (&cpu_topology[cpu].thread_mask) argument
32 #define topology_core_id(cpu) (cpu_topology[cpu].core_id) argument
33 #define topology_core_cpumask(cpu) (&cpu_topology[cpu].core_mask) argument
34 #define topology_book_id(cpu) (cpu_topology[cpu].book_id) argument
35 #define topology_book_cpumask(cpu) (&cpu_topology[cpu].book_mask) argument
36 #define topology_drawer_id(cpu) (cpu_topology[cpu].drawer_id) argument
37 #define topology_drawer_cpumask(cpu) (&cpu_topology[cpu].drawer_mask) argument
[all …]
/linux-6.6.21/tools/power/cpupower/utils/
Dcpufreq-info.c58 unsigned int cpu, nr_cpus; in proc_cpufreq_output() local
67 for (cpu = 0; cpu < nr_cpus; cpu++) { in proc_cpufreq_output()
68 policy = cpufreq_get_policy(cpu); in proc_cpufreq_output()
72 if (cpufreq_get_hardware_limits(cpu, &min, &max)) { in proc_cpufreq_output()
79 cpu , policy->min, max ? min_pctg : 0, policy->max, in proc_cpufreq_output()
126 static int get_boost_mode_x86(unsigned int cpu) in get_boost_mode_x86() argument
132 ret = cpufreq_has_boost_support(cpu, &support, &active, &b_states); in get_boost_mode_x86()
135 " on CPU %d -- are you root?\n"), cpu); in get_boost_mode_x86()
155 ret = decode_pstates(cpu, b_states, pstates, &pstate_no); in get_boost_mode_x86()
181 intel_turbo_ratio = msr_intel_get_turbo_ratio(cpu); in get_boost_mode_x86()
[all …]
/linux-6.6.21/Documentation/devicetree/bindings/cpu/
Dcpu-topology.txt20 For instance in a system where CPUs support SMT, "cpu" nodes represent all
22 In systems where SMT is not supported "cpu" nodes represent all cores present
25 CPU topology bindings allow one to associate cpu nodes with hierarchical groups
29 Currently, only ARM/RISC-V intend to use this cpu topology binding but it may be
32 The cpu nodes, as per bindings defined in [4], represent the devices that
35 A topology description containing phandles to cpu nodes that are not compliant
39 2 - cpu-map node
42 The ARM/RISC-V CPU topology is defined within the cpu-map node, which is a direct
46 - cpu-map node
51 cpu-map node.
[all …]

12345678910>>...134