Hello Jacek,
On 4/12/21 21:45, Jacek Caban wrote:
Hi Paul,
On 12.04.2021 20:39, Paul Gofman wrote:
The hang happens when NtGetContextThread fails due to time out (after successful thread suspend). The timeout happens as the thread is busy in read() for regular file called from NtReadFile and does not process SIGUSR1 until read is complete. The read() may take a real long time when the disk is under heavy load.
Maybe we should just get rid of the timeout, like we do in server_queue_process_apc. It made more sense when we were actively retrying to fetch the context.
I am not aware of the scenario when Windows can fail to get the thread context after a timeout, if you are not aware as well I guess it would indeed be better to remove it.