Title: [282091] trunk/Tools
- Revision
- 282091
- Author
- jbed...@apple.com
- Date
- 2021-09-07 09:37:33 -0700 (Tue, 07 Sep 2021)
Log Message
Exception in run-webkit-tests: Bad file descriptor (Part 1)
https://bugs.webkit.org/show_bug.cgi?id=229994
Reviewed by Aakash Jain.
* Scripts/webkitpy/port/server_process.py:
(ServerProcess.write): Catch "Bad file descriptor."
(ServerProcess._wait_for_data_and_update_buffers_using_select): Ditto.
Modified Paths
Diff
Modified: trunk/Tools/ChangeLog (282090 => 282091)
--- trunk/Tools/ChangeLog 2021-09-07 16:30:15 UTC (rev 282090)
+++ trunk/Tools/ChangeLog 2021-09-07 16:37:33 UTC (rev 282091)
@@ -1,5 +1,16 @@
2021-09-07 Jonathan Bedard <jbed...@apple.com>
+ Exception in run-webkit-tests: Bad file descriptor (Part 1)
+ https://bugs.webkit.org/show_bug.cgi?id=229994
+
+ Reviewed by Aakash Jain.
+
+ * Scripts/webkitpy/port/server_process.py:
+ (ServerProcess.write): Catch "Bad file descriptor."
+ (ServerProcess._wait_for_data_and_update_buffers_using_select): Ditto.
+
+2021-09-07 Jonathan Bedard <jbed...@apple.com>
+
run_webkit_tests failed to print error message in python3 in linux_get_crash_log.py
https://bugs.webkit.org/show_bug.cgi?id=229971
Modified: trunk/Tools/Scripts/webkitpy/port/server_process.py (282090 => 282091)
--- trunk/Tools/Scripts/webkitpy/port/server_process.py 2021-09-07 16:30:15 UTC (rev 282090)
+++ trunk/Tools/Scripts/webkitpy/port/server_process.py 2021-09-07 16:37:33 UTC (rev 282091)
@@ -184,7 +184,7 @@
try:
self._proc.stdin.write(string_utils.encode(bytes))
self._proc.stdin.flush()
- except (IOError, ValueError):
+ except (IOError, OSError, ValueError):
self.stop(0.0)
# stop() calls _reset(), so we have to set crashed to True after calling stop()
# unless we already know that this is a timeout.
@@ -284,6 +284,10 @@
select_fds = (out_fd, err_fd)
try:
read_fds, _, _ = select.select(select_fds, [], select_fds, max(deadline - time.time(), 0))
+ except OSError:
+ # FIXME: https://bugs.webkit.org/show_bug.cgi?id=229994
+ _log.debug('Caught OSError for {}, continuing'.format(self.pid()))
+ return
except select.error as e:
# We can ignore EINVAL since it's likely the process just crashed and we'll
# figure that out the next time through the loop in _read().
@@ -312,6 +316,10 @@
_log.debug('{} because of no data while reading stdout for the server process.'.format(self._crash_message))
self._crashed = True
self._error += data
+ except OSError:
+ # FIXME: https://bugs.webkit.org/show_bug.cgi?id=229994
+ _log.debug('Caught OSError for {}, continuing'.format(self.pid()))
+ pass
except IOError:
# We can ignore the IOErrors because we will detect if the subporcess crashed
# the next time through the loop in _read()
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes