Yes, only one processor will run through the NMI code, but another processor may be accessing the RTC or something else in CMOS. The mutex will prevent the NMI and the RTC access from conflicting.And you need a mutex for SMP systems. If one processor is handling an NMI, another processor may still be accessing the device.Actually this path is meant to be ever accessed by one CPU only (one that
has its LINT1 line enabled), but it may be reached by other ones due to
the NMI watchdog as code does not check if its run by the right processor. This probably qualifies as a bug. Only the watchdog code of the NMI
handler is expected to run everywhere.