.. | .. |
---|
1097 | 1097 | * If this cpu is the only one alive at this point in time, online or |
---|
1098 | 1098 | * not, there are no stop messages to be sent around, so just back out. |
---|
1099 | 1099 | */ |
---|
1100 | | - if (num_other_online_cpus() == 0) { |
---|
1101 | | - sdei_mask_local_cpu(); |
---|
1102 | | - return; |
---|
1103 | | - } |
---|
| 1100 | + if (num_other_online_cpus() == 0) |
---|
| 1101 | + goto skip_ipi; |
---|
1104 | 1102 | |
---|
1105 | 1103 | cpumask_copy(&mask, cpu_online_mask); |
---|
1106 | 1104 | cpumask_clear_cpu(smp_processor_id(), &mask); |
---|
.. | .. |
---|
1119 | 1117 | pr_warn("SMP: failed to stop secondary CPUs %*pbl\n", |
---|
1120 | 1118 | cpumask_pr_args(&mask)); |
---|
1121 | 1119 | |
---|
| 1120 | +skip_ipi: |
---|
1122 | 1121 | sdei_mask_local_cpu(); |
---|
| 1122 | + sdei_handler_abort(); |
---|
1123 | 1123 | } |
---|
1124 | 1124 | |
---|
1125 | 1125 | bool smp_crash_stop_failed(void) |
---|