[Webkit-unassigned] [Bug 217655] [WPE] PlatformDisplay::shutDownEglDisplays() is never called

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Sep 29 07:53:22 PDT 2021


https://bugs.webkit.org/show_bug.cgi?id=217655

Adrian Perez <aperez at igalia.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |aperez at igalia.com

--- Comment #2 from Adrian Perez <aperez at igalia.com> ---
(In reply to Claudio Saavedra from comment #1)
> I've been looking at this again due to a downstream bug with wpewebkit.
> Turns out that most of the times, the webprocess exists when one of the IPC
> connections to the ui process is closed. This happens via a couple of
> handlers that are installed in both WebProcess and AuxiliaryProcess. These
> handlers use _exit(2) to ensure that, when the connection with the UI
> process is gone, the process is not left lingering.
> 
> What is important about this is that _exit(2) does NOT run the handlers that
> are installed via on_exit(3) or atexit(3). My observations indicate that
> most of the times the web process is exiting via _exit(2), which would
> explain why this method (now a lambda, btw, after r261905) is not always
> called.

This means that the whole idea of using an atexit() handler to termite
the EGL displays is only working sometimes due to the cases in which
_exit() is used and the handlers (and display termination) get skipped.

What was the reason to begin with to EGL display termination here instead
of somewhere else like WebProcessMain::platformTerminate()? Also at the
point where the atexit() handlers are invoked, surely we do not have many
things around anymore, so for example what would happen if the PlatformDisplay
implementation would needs to, let's say, spin some iterations of a RunLoop?

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20210929/d1fbab6a/attachment.htm>


More information about the webkit-unassigned mailing list