Closed Bug 1087518 Opened 10 years ago Closed 2 years ago

PHttpChannelChild::Send__delete__ called late in shutdown


(Core :: Networking, defect, P3)






(Reporter: mccr8, Unassigned)



(Whiteboard: [necko-backlog])

In debug Linux e10s M5, we sometimes destroy an nsHTMLDocument during shutdown cycle collection, which ends up calling HttpChannelChild::Release, which ends up calling PHttpChannelChild::Send__delete__() when it is too late to actually send anything, so we exit the child process.  This prevents us from getting leak logs for the child process.
I wonder if we could just make the IPDL machinery know when it's too late to be able to send anything and silently ignore such requests? It seems like the only other solution is playing whack-a-mole with the ContentChild::IsAlive hammer.
That sounds fine to me, but I think Ben wants it like this.  Is that right, Ben?  We have a few of these on file already, and I need to file some more.
Flags: needinfo?(bent.mozilla)
Also, this case is more complicated because the IPDL destructor will release the channel, thus preventing a leak. If we guard the Send__delete__ call, we don't run the release code and therefore leak the channel.
Blocks: 1083897
No longer blocks: 1051230
This is also happening sometimes in e10s debug M1.
Blocks: 1067633
No longer blocks: 1083897
We talked about this in some other bug, right?
Flags: needinfo?(bent.mozilla)
Yeah, sorry, I should have cancelled the needinfo.
Whiteboard: [necko-backlog]
Bulk change to priority:
Priority: -- → P1
Bulk change to priority:
Priority: P1 → P3

content process leak logs have been working for a long time, so I suppose this isn't relevant any more.

Closed: 2 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.