• Home
  • Raw
  • Download

Lines Matching refs:cpu

91 static void ipi_setup(int cpu);
113 static int secondary_biglittle_prepare(unsigned int cpu) in secondary_biglittle_prepare() argument
115 if (!cpu_vtable[cpu]) in secondary_biglittle_prepare()
116 cpu_vtable[cpu] = kzalloc(sizeof(*cpu_vtable[cpu]), GFP_KERNEL); in secondary_biglittle_prepare()
118 return cpu_vtable[cpu] ? 0 : -ENOMEM; in secondary_biglittle_prepare()
126 static int secondary_biglittle_prepare(unsigned int cpu) in secondary_biglittle_prepare() argument
136 int __cpu_up(unsigned int cpu, struct task_struct *idle) in __cpu_up() argument
143 ret = secondary_biglittle_prepare(cpu); in __cpu_up()
165 ret = smp_ops.smp_boot_secondary(cpu, idle); in __cpu_up()
174 if (!cpu_online(cpu)) { in __cpu_up()
175 pr_crit("CPU%u: failed to come online\n", cpu); in __cpu_up()
179 pr_err("CPU%u: failed to boot: %d\n", cpu, ret); in __cpu_up()
210 static int platform_cpu_kill(unsigned int cpu) in platform_cpu_kill() argument
213 return smp_ops.cpu_kill(cpu); in platform_cpu_kill()
217 static int platform_cpu_disable(unsigned int cpu) in platform_cpu_disable() argument
220 return smp_ops.cpu_disable(cpu); in platform_cpu_disable()
225 int platform_can_hotplug_cpu(unsigned int cpu) in platform_can_hotplug_cpu() argument
232 return smp_ops.cpu_can_disable(cpu); in platform_can_hotplug_cpu()
239 return cpu != 0; in platform_can_hotplug_cpu()
242 static void ipi_teardown(int cpu) in ipi_teardown() argument
258 unsigned int cpu = smp_processor_id(); in __cpu_disable() local
261 ret = platform_cpu_disable(cpu); in __cpu_disable()
266 remove_cpu_topology(cpu); in __cpu_disable()
273 set_cpu_online(cpu, false); in __cpu_disable()
274 ipi_teardown(cpu); in __cpu_disable()
298 void __cpu_die(unsigned int cpu) in __cpu_die() argument
300 if (!cpu_wait_death(cpu, 5)) { in __cpu_die()
301 pr_err("CPU%u: cpu didn't die\n", cpu); in __cpu_die()
304 pr_debug("CPU%u: shutdown\n", cpu); in __cpu_die()
306 clear_tasks_mm_cpumask(cpu); in __cpu_die()
314 if (!platform_cpu_kill(cpu)) in __cpu_die()
315 pr_err("CPU%u: unable to kill\n", cpu); in __cpu_die()
328 unsigned int cpu = smp_processor_id(); in arch_cpu_idle_dead() local
370 smp_ops.cpu_die(cpu); in arch_cpu_idle_dead()
373 cpu); in arch_cpu_idle_dead()
410 unsigned int cpu; in secondary_start_kernel() local
427 cpu = smp_processor_id(); in secondary_start_kernel()
430 cpumask_set_cpu(cpu, mm_cpumask(mm)); in secondary_start_kernel()
437 pr_debug("CPU%u: Booted secondary processor\n", cpu); in secondary_start_kernel()
445 smp_ops.smp_secondary_init(cpu); in secondary_start_kernel()
447 notify_cpu_starting(cpu); in secondary_start_kernel()
449 ipi_setup(cpu); in secondary_start_kernel()
453 smp_store_cpu_info(cpu); in secondary_start_kernel()
460 set_cpu_online(cpu, true); in secondary_start_kernel()
478 int cpu; in smp_cpus_done() local
481 for_each_online_cpu(cpu) in smp_cpus_done()
482 bogosum += per_cpu(cpu_data, cpu).loops_per_jiffy; in smp_cpus_done()
543 unsigned int cpu, i; in show_ipi_list() local
551 for_each_online_cpu(cpu) in show_ipi_list()
552 seq_printf(p, "%10u ", irq_desc_kstat_cpu(ipi_desc[i], cpu)); in show_ipi_list()
568 void arch_send_call_function_single_ipi(int cpu) in arch_send_call_function_single_ipi() argument
570 smp_cross_call(cpumask_of(cpu), IPI_CALL_FUNC); in arch_send_call_function_single_ipi()
593 static void ipi_cpu_stop(unsigned int cpu) in ipi_cpu_stop() argument
597 pr_crit("CPU%u: stopping\n", cpu); in ipi_cpu_stop()
602 set_cpu_online(cpu, false); in ipi_cpu_stop()
615 int register_ipi_completion(struct completion *completion, int cpu) in register_ipi_completion() argument
617 per_cpu(cpu_completion, cpu) = completion; in register_ipi_completion()
621 static void ipi_complete(unsigned int cpu) in ipi_complete() argument
623 complete(per_cpu(cpu_completion, cpu)); in ipi_complete()
631 unsigned int cpu = smp_processor_id(); in do_handle_IPI() local
655 ipi_cpu_stop(cpu); in do_handle_IPI()
665 ipi_complete(cpu); in do_handle_IPI()
676 cpu, ipinr); in do_handle_IPI()
708 static void ipi_setup(int cpu) in ipi_setup() argument
748 void smp_send_reschedule(int cpu) in smp_send_reschedule() argument
750 smp_cross_call(cpumask_of(cpu), IPI_RESCHEDULE); in smp_send_reschedule()
807 int cpu, first = cpumask_first(cpus); in cpufreq_callback() local
814 for_each_cpu(cpu, cpus) { in cpufreq_callback()
815 per_cpu(l_p_j_ref, cpu) = in cpufreq_callback()
816 per_cpu(cpu_data, cpu).loops_per_jiffy; in cpufreq_callback()
817 per_cpu(l_p_j_ref_freq, cpu) = freq->old; in cpufreq_callback()
834 for_each_cpu(cpu, cpus) in cpufreq_callback()
835 per_cpu(cpu_data, cpu).loops_per_jiffy = lpj; in cpufreq_callback()