#13004: Timeout no longer kills processes on timeout -------------------------------------+------------------------------------- Reporter: Phyx- | Owner: Type: bug | Status: closed Priority: normal | Milestone: 8.2.1 Component: Test Suite | Version: 8.1 Resolution: fixed | Keywords: Operating System: Windows | Architecture: Type of failure: Incorrect result | Unknown/Multiple at runtime | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D2880 Wiki Page: | -------------------------------------+------------------------------------- Comment (by Tamar Christina <tamar@…>): In [changeset:"efc4a1661f0fc1004a4b7b0914f3d3a08c2e791a/ghc" efc4a16/ghc]: {{{ #!CommitTicketReference repository="ghc" revision="efc4a1661f0fc1004a4b7b0914f3d3a08c2e791a" Allow timeout to kill entire process tree. Summary: we spawn the child processes with handle inheritance on. So they inherit the std handles. The problem is that the job handle gets inherited too. So the `JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE` doesn't get used since there are open handles to the job in the children. We then terminate the top level process which is `sh` but leaves the children around. This explicitly disallows the inheritance of the job and events handle. Test Plan: ./validate Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: thomie, #ghc_windows_task_force Differential Revision: https://phabricator.haskell.org/D2895 GHC Trac Issues: #13004 }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13004#comment:4> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler