Bug 257519
| Summary: | RemoteGraphicsContextGLProxy::initializeIPC makes a copy of the StreamServerConnection::Handle | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Matt Woodrow <mattwoodrow> |
| Component: | WebGL | Assignee: | Matt Woodrow <mattwoodrow> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | dino, kbr, kevin.chetty, kkinnunen, webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| See Also: | https://bugs.webkit.org/show_bug.cgi?id=257528 | ||
Matt Woodrow
The GPUConnectionToWebProcess::CreateGraphicsContextGL object's constructor doesn't actually move, so we end up making a copy for the IPC message.
The 'serverConnectionHandle' instance is then still alive, and holding on to a MachSendRight.
waitUntilInitialized can then block (for the 30 second timeout) if the GPUP crashes, since notification of the crash doesn't happen until all send rights are destroyed (including the one on the stack).
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Matt Woodrow
<rdar://109720377>
Matt Woodrow
Pull request: https://github.com/WebKit/WebKit/pull/14519
EWS
Committed 264766@main (50f865ffbe32): <https://commits.webkit.org/264766@main>
Reviewed commits have been landed. Closing PR #14519 and removing active labels.
Simon Fraser (smfr)
*** Bug 257890 has been marked as a duplicate of this bug. ***