[Webkit-unassigned] [Bug 51351] UI process should respond to synchronous messages from the web process on a non-main thread by default
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Wed Jan 26 18:08:23 PST 2011
https://bugs.webkit.org/show_bug.cgi?id=51351
--- Comment #4 from Adam Roben (aroben) <aroben at apple.com> 2011-01-26 18:08:23 PST ---
(In reply to comment #3)
> We've decided to see if we can get away without this. We'll still have to fix bug 51352.
Anders and I just talked some more and realized that we will probably need to fix this eventually. Consider the following situation:
Web process:
Sends some asynchronous messages to the UI process, then sends a synchronous message (that doesn't present UI and thus is not covered by bug 51352, e.g., GetToolbarsAreVisible), and blocks waiting for a reply.
UI process:
While processing one of the asynchronous messages, touches the window hierarchy, resulting in a synchronous message to the web process.
So we've ended up in a deadlock again even if bug 51352 is fixed.
Our plan is threefold:
1) Make the web process spin a run loop while waiting for a reply to any synchronous message, not just those that end up presenting UI in the UI process.
2) Add a test mode to WebKit2 that exercises the reentrancy that spinning a nested run loop enables.
3) Eventually change WebKit2 only to spin a run loop while waiting for a reply to a synchronous message that will present UI, and move all other synchronous message handling to a non-main thread, as described in comment 1.
If the testing from (2) uncovers many intractable issues, we may do (3) sooner rather than later.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list