STINNER Victor added the comment: fstat_not_eintr.py: run this script from a NFS share and unplug the network cable, wait, replug. Spoiler: fstat() hangs until the network is back, CTRL+c or setitimer() don't interrupt it.
By the way, it looks like the itimer is interrupted during fstat! Extract of strace output: --- <cable unplugged> rt_sigreturn() = -1 EINTR (Interrupted system call) select(0, NULL, NULL, NULL, {0, 100000}) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGALRM {si_signo=SIGALRM, si_code=SI_KERNEL} --- rt_sigreturn() = -1 EINTR (Interrupted system call) write(1, "fstat...\n", 9) = 9 fstat(3, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 <cable replugged> --- SIGALRM {si_signo=SIGALRM, si_code=SI_KERNEL} --- rt_sigreturn() = 0 --- The fstat() took 3 seconds, I expected 30 SIGALRM, but none occurred during fstat(). ---------- Added file: http://bugs.python.org/file38662/fstat_not_eintr.py _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue23648> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com