|
@@ -599,10 +599,12 @@ wakeup_secondary_cpu(int logical_apicid, unsigned long start_eip)
|
|
|
* Give the other CPU some time to accept the IPI.
|
|
|
*/
|
|
|
udelay(200);
|
|
|
- maxlvt = lapic_get_maxlvt();
|
|
|
- if (maxlvt > 3) /* Due to the Pentium erratum 3AP. */
|
|
|
- apic_write(APIC_ESR, 0);
|
|
|
- accept_status = (apic_read(APIC_ESR) & 0xEF);
|
|
|
+ if (APIC_INTEGRATED(apic_version[phys_apicid])) {
|
|
|
+ maxlvt = lapic_get_maxlvt();
|
|
|
+ if (maxlvt > 3) /* Due to the Pentium erratum 3AP. */
|
|
|
+ apic_write(APIC_ESR, 0);
|
|
|
+ accept_status = (apic_read(APIC_ESR) & 0xEF);
|
|
|
+ }
|
|
|
pr_debug("NMI sent.\n");
|
|
|
|
|
|
if (send_status)
|