Function report |
Source Code:arch\x86\kernel\smpboot.c |
Create Date:2022-07-28 08:24:41 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:NOTE - on most systems this is a PHYSICAL apic ID, but on multiquad* (ie clustered apic addressing mode), this is a LOGICAL apic ID.* Returns zero if CPU booted OK, else error code from* ->wakeup_secondary_cpu.
Proto:static int do_boot_cpu(int apicid, int cpu, struct task_struct *idle, int *cpu0_nmi_registered)
Type:int
Parameter:
Type | Parameter | Name |
---|---|---|
int | apicid | |
int | cpu | |
struct task_struct * | idle | |
int * | cpu0_nmi_registered |
1027 | start_ip = SMP trampoline |
1029 | boot_error = 0 |
1032 | sp = task_pt_regs(idle) |
1033 | address = Provide the original GDT |
1035 | initial_stack = sp |
1038 | init_espfix_ap(cpu) |
1048 | If warm_reset Then |
1050 | pr_debug("Setting warm reset code and vector.\n") |
1056 | If APIC_INTEGRATED(boot_cpu_apic_version) Then |
1057 | apic_write(APIC_ESR, 0) |
1069 | smp_mb() |
1077 | If wakeup_secondary_cpu Then boot_error = wakeup_secondary_cpu(apicid, start_ip) |
1083 | If Not boot_error Then |
1087 | boot_error = -1 |
1089 | When time_before(jiffies, timeout) cycle |
1094 | pumask_set_cpu - set a cpu in a cpumask*@cpu: cpu number (< nr_cpu_ids)*@dstp: the cpumask pointer |
1095 | boot_error = 0 |
1096 | Break |
1098 | schedule() |
1102 | If Not boot_error Then |
1113 | schedule() |
1117 | If warm_reset Then |
1124 | Return boot_error |
Name | Describe |
---|---|
native_cpu_up |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |