Closed
Bug 1083897
Opened 11 years ago
Closed 11 years ago
Require leak logs for tab processes
Categories
(Testing :: Mochitest, defect)
Testing
Mochitest
Tracking
(firefox38 disabled)
RESOLVED
FIXED
mozilla38
| Tracking | Status | |
|---|---|---|
| firefox38 | --- | disabled |
People
(Reporter: mccr8, Assigned: mccr8)
References
Details
(Whiteboard: [MemShrink:P2])
Attachments
(2 files, 1 obsolete file)
|
1.16 KB,
patch
|
jmaher
:
review+
|
Details | Diff | Splinter Review |
|
1.89 KB,
patch
|
khuey
:
review+
|
Details | Diff | Splinter Review |
Leak logging is (sort of) working on Linux now. Unfortunately as we've seen random code can break leak logging without turning the tree orange, and then that code or later code can introduce leaks, which is bad. So we should probably enable requiring logs ASAP.
| Assignee | ||
Comment 1•11 years ago
|
||
This isn't quite ready to go, but I want to have a reviewed patch in hand when it is.
Attachment #8506251 -
Flags: review?(khuey)
Attachment #8506251 -
Flags: review?(khuey) → review+
| Assignee | ||
Comment 2•11 years ago
|
||
What is blocking this now is various cases where we send messages late in shutdown on debug builds.
with this patch, with exit(0) on late messages: https://treeherder.mozilla.org/ui/#/jobs?repo=try&revision=3a3d4a617070
with this patch, with no exit(0) on late messages: https://treeherder.mozilla.org/ui/#/jobs?repo=try&revision=d7b5ee61b1af
| Assignee | ||
Comment 3•11 years ago
|
||
Benjamin - Right now we have a slew of IPDL things that send messages late in shutdown, causing us to exit(0) in the child process (see the bugs blocking this one). This prevents us from getting leak logs consistently in the child process (this bug).
There are two possible solutions:
1. Fix all of these blocking bugs, so we never send messages late. This will be a bit tedious and may take a while.
2. Hack it so that we still don't send a message in this case, but we also don't exit(0). This leaves us in the state where we aren't sending messages some places when we might expect it. (Note that we don't report any error for this right now in a way that shows up on TBPL, so we're not really noticing this anyways...)
I asked Ben T., and he described himself as "kinda meh" on these options, and that I should ask you. Do you have a strong preference between the two of these? If not, I'm inclined to go with option 2. Thanks.
Flags: needinfo?(benjamin)
Comment 4•11 years ago
|
||
I guess that depends on the goal, I think.
Option 1 is the expedient way to test *something*, but it will certainly cause more random orange. In particular if we start dropping messages on the floor, we are going to start leaking the objects related to those messages in some cases.
Option 2 seems like the thing we should be striving for. And even I think we should have some related invariants:
* There are no toplevel IPDL actors when we begin XPCOM shutdown.
* There are no active IPC Channel objects when we begin XPCOM shutdown.
That means we'll have to do the work to make sure we shut down actors/IPC before we begin shutdown, but it also means that we won't have to worry about the particular bug of having pending messages flying around during shutdown.
I'm sorry that's not a straight-up answer to the question. I expect that if you do option 1, you're going to end up being on the hook for option 2 later anyway, simply because of the randomorange.
Flags: needinfo?(benjamin)
| Assignee | ||
Comment 5•11 years ago
|
||
Did you reverse option 1 and 2 there compared to what I had in comment 3 or am I just not understanding your point? I don't understand how the hacky solution (just keep going if we send messages late) is something to be striving for. ;)
Flags: needinfo?(benjamin)
| Assignee | ||
Updated•11 years ago
|
| Assignee | ||
Updated•11 years ago
|
Whiteboard: [MemShrink]
| Assignee | ||
Comment 7•11 years ago
|
||
This is getting closer to being ready, but on Windows we intentionally exit(0) before we produce a leak log, due to an intermittent XP debug failure. I was thinking this would be okay for now because we don't run e10s tests on Windows yet, but I forgot that we still do run some tests out-of-process in regular Mochitests. Maybe I can dig around in some test harness stuff to disable requiring logs on Windows.
| Assignee | ||
Comment 8•11 years ago
|
||
Ok, this should be easy to fix.
I filed bug 1091917 for enabling requiring leak logs for content processes on Windows.
| Assignee | ||
Comment 9•11 years ago
|
||
We don't create leak logs in tab processes on Windows, so we shouldn't produce an error when they don't create one.
Windows try run looks good: https://treeherder.mozilla.org/ui/#/jobs?repo=try&revision=4ae4d58dac66
Attachment #8515036 -
Flags: review?(jmaher)
Comment 10•11 years ago
|
||
Comment on attachment 8515036 [details] [diff] [review]
part 2 - Don't require leak logs for tab processes on Windows.
Review of attachment 8515036 [details] [diff] [review]:
-----------------------------------------------------------------
thanks for the bug info here!
Attachment #8515036 -
Flags: review?(jmaher) → review+
Updated•11 years ago
|
Whiteboard: [MemShrink] → [MemShrink:P2]
| Assignee | ||
Comment 11•11 years ago
|
||
Ignore missing leak logs for b2g tab processes.
Attachment #8506251 -
Attachment is obsolete: true
Attachment #8527044 -
Flags: review?(khuey)
Attachment #8527044 -
Flags: review?(khuey) → review+
| Assignee | ||
Comment 12•11 years ago
|
||
Bug 1103036 seems like a better approach to dealing with shutdown weirdness.
Depends on: 1103036
| Assignee | ||
Comment 13•11 years ago
|
||
e10s try run: https://treeherder.mozilla.org/ui/#/jobs?repo=try&revision=d6b02c33dce7
full try run: https://treeherder.mozilla.org/ui/#/jobs?repo=try&revision=7b13debca7e7
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/b8ead5a0b265
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/783763e3562d
https://hg.mozilla.org/mozilla-central/rev/b8ead5a0b265
https://hg.mozilla.org/mozilla-central/rev/783763e3562d
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla38
Backed out on beta for bug 1138520:
https://hg.mozilla.org/releases/mozilla-beta/rev/56f805ac34ce
status-firefox38:
--- → disabled
You need to log in
before you can comment on or make changes to this bug.
Description
•