libuv: Process hangs on the call to PowerRegisterSuspendResumeNotification on Windows
- Version: 1.20.3
- Platform: Windows 10 (x64) virtual machine
- Environment: cmake launched from Jenkins, which runs as a system service
I’m using cmake and the process is hanging inside some code belonging to libuv: the uv__register_system_resume_callback function on the call to PowerRegisterSuspendResumeNotification.
The call stack is shown in the following screenshot from process explorer (note that the process had been stuck overnight for more than 10 hours at this point):

As shown in the following disassembly, the offset inside the cmake process corresponds to the uv__register_system_resume_callback function inside libuv:

The strange thing is that none of the documentation suggests that the PowerRegisterSuspendResumeNotification function should block, so I can’t see why it’s hanging. It seems to be stuck waiting on a mutex deep in the Kernel.
About this issue
- Original URL
- State: closed
- Created 6 years ago
- Comments: 20 (9 by maintainers)
I’m seeing this too, on 64-bit Windows 7 Professional, virtualized on KVM, with no power management features exposed in ACPI.
@bzoz