Auto merge of #25670 - jdm:crashtest-kill, r=jdm

Kill off hanging crashtests.

The reason that complex-glsl-does-not-crash.html kept leaving zombie processes is the following:
* WPT introduced the notion of crash tests (ie. tests that verify that they do not crash)
* if a timeout expires while running a crash test and the test has not finished running, it is reported as a failure and potential hang
* there is no code that causes a hanging test to stop running
* any test filename that ends in `-crash` is automatically treated as a crashtest
This commit is contained in:
bors-servo 2020-01-31 23:34:23 -05:00 committed by GitHub
commit 0f4066a38a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 1 deletions

View file

@ -768576,7 +768576,7 @@
"support" "support"
], ],
"tools/wptrunner/wptrunner/executors/executorservo.py": [ "tools/wptrunner/wptrunner/executors/executorservo.py": [
"8f8e120e66da6403f256f99f279f1f5dc8008272", "4816c3df06e87f8e85301918c341bbff97817777",
"support" "support"
], ],
"tools/wptrunner/wptrunner/executors/executorservodriver.py": [ "tools/wptrunner/wptrunner/executors/executorservodriver.py": [

View file

@ -332,6 +332,8 @@ class ServoCrashtestExecutor(ProcessTestExecutor):
self.test = test self.test = test
success, data = ServoTimedRunner(self.logger, self.do_crashtest, self.protocol, success, data = ServoTimedRunner(self.logger, self.do_crashtest, self.protocol,
test_url, timeout, self.extra_timeout).run() test_url, timeout, self.extra_timeout).run()
# Ensure that no processes hang around if they timeout.
self.proc.kill()
if success: if success:
return self.convert_result(test, data) return self.convert_result(test, data)