sync was not periodically run. Chain of timers was accidentially broken. Kernel sends SIGKSTOP signal on shutdown. FS calls sync to clean up.
Kernel no longer keeps track of user alarms on behalf of the PM. Instead, the PM maintains its own list of watchdog timers, and uses one synchronous alarm (at the kernel) to get notifications for expired user timers.