changes since v2: * in v3-0001-Add-run_fork_with_timeout-utility.patch * set writer on both pipes just after the beginning of the child process * use $pipe->flush() after writing to the pipe to make our intent more evident ( perl _exit will close the file handles but will not flush IO buffers) * in v3-0001-Fixes-1415-do-not-block-pvestatd-when-nfsd-is-sto.patch * use correct parameters order
changes since V1: * add a second pipe to catch die() causes in the passed sub * disable pending alarms until we reaped the child * disable signals until we reaped the child ( both to avoid Zombies) * rename the subroutine to run_fork_with_timeout as suggested With patches applied, pvesm status returns the following from a stopped nfsd server after a two second wait: pvesm status -storage nfsbsd got timeout unable to activate storage 'nfsbsd' - directory '/mnt/pve/nfsbsd' does not exist or is unreachable nfsbsd nfs 0 0 0 0 100.00% Emmanuel Kasper (1): Add run_fork_with_timeout utility src/PVE/Tools.pm | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) -- 2.11.0 _______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel