Lines Matching refs:cpu
390 void set_cpu_sibling_map(int cpu) in set_cpu_sibling_map() argument
394 struct cpuinfo_x86 *c = &cpu_data(cpu); in set_cpu_sibling_map()
398 cpumask_set_cpu(cpu, cpu_sibling_setup_mask); in set_cpu_sibling_map()
401 cpumask_set_cpu(cpu, cpu_sibling_mask(cpu)); in set_cpu_sibling_map()
402 cpumask_set_cpu(cpu, cpu_llc_shared_mask(cpu)); in set_cpu_sibling_map()
403 cpumask_set_cpu(cpu, cpu_core_mask(cpu)); in set_cpu_sibling_map()
411 if ((i == cpu) || (has_smt && match_smt(c, o))) in set_cpu_sibling_map()
412 link_mask(sibling, cpu, i); in set_cpu_sibling_map()
414 if ((i == cpu) || (has_mp && match_llc(c, o))) in set_cpu_sibling_map()
415 link_mask(llc_shared, cpu, i); in set_cpu_sibling_map()
426 if ((i == cpu) || (has_mp && match_die(c, o))) { in set_cpu_sibling_map()
427 link_mask(core, cpu, i); in set_cpu_sibling_map()
432 if (cpumask_weight(cpu_sibling_mask(cpu)) == 1) { in set_cpu_sibling_map()
443 if (i != cpu) in set_cpu_sibling_map()
445 } else if (i != cpu && !c->booted_cores) in set_cpu_sibling_map()
454 const struct cpumask *cpu_coregroup_mask(int cpu) in cpu_coregroup_mask() argument
456 return cpu_llc_shared_mask(cpu); in cpu_coregroup_mask()
461 int cpu; in impress_friends() local
467 for_each_possible_cpu(cpu) in impress_friends()
468 if (cpumask_test_cpu(cpu, cpu_callout_mask)) in impress_friends()
469 bogosum += cpu_data(cpu).loops_per_jiffy; in impress_friends()
679 static void announce_cpu(int cpu, int apicid) in announce_cpu() argument
682 int node = early_cpu_to_node(cpu); in announce_cpu()
691 if (cpu == 1) in announce_cpu()
705 if (cpu == 1) in announce_cpu()
708 pr_cont("%*s#%d", width - num_digits(cpu), " ", cpu); in announce_cpu()
712 node, cpu, apicid); in announce_cpu()
717 int cpu; in wakeup_cpu0_nmi() local
719 cpu = smp_processor_id(); in wakeup_cpu0_nmi()
720 if (cpu == 0 && !cpu_online(cpu) && enable_start_cpu0) in wakeup_cpu0_nmi()
739 wakeup_cpu_via_init_nmi(int cpu, unsigned long start_ip, int apicid, in wakeup_cpu_via_init_nmi() argument
750 if (cpu) { in wakeup_cpu_via_init_nmi()
779 void common_cpu_up(unsigned int cpu, struct task_struct *idle) in common_cpu_up() argument
784 per_cpu(current_task, cpu) = idle; in common_cpu_up()
788 irq_ctx_init(cpu); in common_cpu_up()
789 per_cpu(cpu_current_top_of_stack, cpu) = in common_cpu_up()
793 initial_gs = per_cpu_offset(cpu); in common_cpu_up()
795 per_cpu(kernel_stack, cpu) = in common_cpu_up()
805 static int do_boot_cpu(int apicid, int cpu, struct task_struct *idle) in do_boot_cpu() argument
819 early_gdt_descr.address = (unsigned long)get_cpu_gdt_table(cpu); in do_boot_cpu()
824 announce_cpu(cpu, apicid); in do_boot_cpu()
853 cpumask_clear_cpu(cpu, cpu_initialized_mask); in do_boot_cpu()
865 boot_error = wakeup_cpu_via_init_nmi(cpu, start_ip, apicid, in do_boot_cpu()
875 if (cpumask_test_cpu(cpu, cpu_initialized_mask)) { in do_boot_cpu()
879 cpumask_set_cpu(cpu, cpu_callout_mask); in do_boot_cpu()
892 while (!cpumask_test_cpu(cpu, cpu_callin_mask)) { in do_boot_cpu()
923 int native_cpu_up(unsigned int cpu, struct task_struct *tidle) in native_cpu_up() argument
925 int apicid = apic->cpu_present_to_apicid(cpu); in native_cpu_up()
931 pr_debug("++++++++++++++++++++=_---CPU UP %u\n", cpu); in native_cpu_up()
936 pr_err("%s: bad cpu %d\n", __func__, cpu); in native_cpu_up()
943 if (cpumask_test_cpu(cpu, cpu_callin_mask)) { in native_cpu_up()
944 pr_debug("do_boot_cpu %d Already started\n", cpu); in native_cpu_up()
955 err = cpu_check_up_prepare(cpu); in native_cpu_up()
960 __cpu_disable_lazy_restore(cpu); in native_cpu_up()
962 common_cpu_up(cpu, tidle); in native_cpu_up()
964 err = do_boot_cpu(apicid, cpu, tidle); in native_cpu_up()
966 pr_err("do_boot_cpu failed(%d) to wakeup CPU#%u\n", err, cpu); in native_cpu_up()
975 check_tsc_sync_source(cpu); in native_cpu_up()
978 while (!cpu_online(cpu)) { in native_cpu_up()
1032 unsigned int cpu; in smp_sanity_check() local
1039 for_each_present_cpu(cpu) { in smp_sanity_check()
1041 set_cpu_present(cpu, false); in smp_sanity_check()
1046 for_each_possible_cpu(cpu) { in smp_sanity_check()
1048 set_cpu_possible(cpu, false); in smp_sanity_check()
1137 current_thread_info()->cpu = 0; /* needed? */ in native_smp_prepare_cpus()
1291 static void remove_siblinginfo(int cpu) in remove_siblinginfo() argument
1294 struct cpuinfo_x86 *c = &cpu_data(cpu); in remove_siblinginfo()
1296 for_each_cpu(sibling, cpu_core_mask(cpu)) { in remove_siblinginfo()
1297 cpumask_clear_cpu(cpu, cpu_core_mask(sibling)); in remove_siblinginfo()
1301 if (cpumask_weight(cpu_sibling_mask(cpu)) == 1) in remove_siblinginfo()
1305 for_each_cpu(sibling, cpu_sibling_mask(cpu)) in remove_siblinginfo()
1306 cpumask_clear_cpu(cpu, cpu_sibling_mask(sibling)); in remove_siblinginfo()
1307 for_each_cpu(sibling, cpu_llc_shared_mask(cpu)) in remove_siblinginfo()
1308 cpumask_clear_cpu(cpu, cpu_llc_shared_mask(sibling)); in remove_siblinginfo()
1309 cpumask_clear(cpu_llc_shared_mask(cpu)); in remove_siblinginfo()
1310 cpumask_clear(cpu_sibling_mask(cpu)); in remove_siblinginfo()
1311 cpumask_clear(cpu_core_mask(cpu)); in remove_siblinginfo()
1314 cpumask_clear_cpu(cpu, cpu_sibling_setup_mask); in remove_siblinginfo()
1317 static void __ref remove_cpu_from_maps(int cpu) in remove_cpu_from_maps() argument
1319 set_cpu_online(cpu, false); in remove_cpu_from_maps()
1320 cpumask_clear_cpu(cpu, cpu_callout_mask); in remove_cpu_from_maps()
1321 cpumask_clear_cpu(cpu, cpu_callin_mask); in remove_cpu_from_maps()
1323 cpumask_clear_cpu(cpu, cpu_initialized_mask); in remove_cpu_from_maps()
1324 numa_remove_cpu(cpu); in remove_cpu_from_maps()
1329 int cpu = smp_processor_id(); in cpu_disable_common() local
1331 remove_siblinginfo(cpu); in cpu_disable_common()
1335 remove_cpu_from_maps(cpu); in cpu_disable_common()
1354 int common_cpu_die(unsigned int cpu) in common_cpu_die() argument
1361 if (cpu_wait_death(cpu, 5)) { in common_cpu_die()
1363 pr_info("CPU %u is now offline\n", cpu); in common_cpu_die()
1365 pr_err("CPU %u didn't die...\n", cpu); in common_cpu_die()
1372 void native_cpu_die(unsigned int cpu) in native_cpu_die() argument
1374 common_cpu_die(cpu); in native_cpu_die()
1503 void native_cpu_die(unsigned int cpu) in native_cpu_die() argument