[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