CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2023/11/22 11:50:10
Modified files:
sys/arch/amd64/amd64: cpu.c
Log message:
Fix race when initializing TSC.
During boot TSC initialization could fail with panic: tsc_test_sync_ap:
cpu2: tsc_ap_name is not NULL: cpu1.
The root cause is a race between the moment the application processor
sets CPUF_IDENTIFIED in cpu_hatch() and the moment the boot processor
checks CPUF_IDENTIFIED in cpu_start_secondary() before the TSC sync
test.
The fix is to set CPUF_IDENTIFIED before clearing CPUF_IDENTIFY in
cpu_hatch().
from hshoexer@ cheloha@; OK deraadt@ mlarkin@