<html>
    <head>
      <base href="https://bugs.webkit.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [GTK] Subprocess leak"
   href="https://bugs.webkit.org/show_bug.cgi?id=158899">158899</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>[GTK] Subprocess leak
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>WebKit
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>Other
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>Normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P2
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>WebKit Gtk
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>webkit-unassigned&#64;lists.webkit.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>mcatanzaro&#64;igalia.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>bugs-noreply&#64;webkitgtk.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>I currently have one database process, two network processes, and 32 web processes running. But I have only one Epiphany instance with six tabs open. So we're leaking subprocesses. I've been hearing sporadic reports of this for some time, but I've never noticed it myself before now.

I have no clue what's causing this, but this should be entirely preventable on Linux using PR_SET_PDEATHSIG, which kills the child when the parent process dies. We should consider using this, but it might not be possible as we need to be careful not to kill child processes if they have e.g. cleanup work to do....

We should probably also make the UI process responsible for reaping child processes, so we don't need GLib's intermediate process that breaks the process hierarchy; that way it would be possible to tell which UI process corresponds to each subprocess.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>