[Webkit-unassigned] [Bug 51474] New: [Qt][WK2] WebProcess does not clean up on termination

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Dec 22 09:25:16 PST 2010


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

           Summary: [Qt][WK2] WebProcess does not clean up on termination
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: WebKit2
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: kbalazs at webkit.org


The cleanup logic is broken again. There are two main issue:
 - we are killing the web process so it does not have a chance to clean up
 - the CrashHandler do not do it's job
The first one can be fixed easily by sending a SIGTERM instead of a SIGKILL, the second one is more complicated.
Since we force the termination of the web process with a signal we cannot rely on QCoreApplication::aboutToQuit.
Actually we could stop the event loop explicitly in answer to the signal but after a lot of debugging I feel
that QCoreApplication::aboutToQuit is not very reliable so I decided to call the cleanup method explicitly instead of
through the signal-slot mechanism. Besides this we should try to handle a crash only once to avoid endless recursion
if we are crashing during cleanup. In summary I would do the following changes:
 - Sending SIGTERM instead of SIGKILL from the UI process to force termination of the web process.
 - Calling the cleanup method explicitly from the signal handler _and_ from WebProcess::platformShutdown (we can reach that before getting
   the signal)
 - fix the cleanup of the MappedMemoryPool. Currently this is only deleted if we get a signal. If the web process shutting down before
   getting signal this is not deleted.

I feel that doing this in one patch is more reasonable than separating the issues into parts.
All of this is belonging to cleanup on termination.

-- 
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