Shutdown profiles should include profiles from all child processes
Categories
(Core :: Gecko Profiler, defect, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox67 | --- | affected |
People
(Reporter: mozbugz, Assigned: canova)
References
(Blocks 1 open bug)
Details
(Whiteboard: [fxp-profiler])
Attachments
(5 files, 1 obsolete file)
Bug 1529131 - Send back the profile data during shutdown on utility process r?gerard-majax!,mstange!
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review |
Follow-up to bug 1509533, which added Web Content process profiles to shutdown profiles.
But Markus remarked in https://phabricator.services.mozilla.com/D20277#545829 :
However, this reminds me that we only have "exit profiles" for content processes, but not for other processes such as the GPU process, the network process or the decoding process. And if I remember correctly, sending up the exit profile and shutting down the PProfiler protocol correctly required some fragile back-and-forth communication that we may not want to do for the other processes. So this approach is inferior to the approach you suggested in https://bugzilla.mozilla.org/show_bug.cgi?id=1528859 in that sense. Not having a useful Compositor thread in shutdown profiles on Windows may be quite painful.
Could other processes automatically send exit profiles?
Should we attempt to make them send an exit profile when the main process knows shutdown is happening?
Reporter | ||
Updated•4 years ago
|
Comment 1•4 years ago
|
||
(In reply to Gerald Squelart [:gerald] (he/him) from comment #0)
Could other processes automatically send exit profiles?
Should we attempt to make them send an exit profile when the main process knows shutdown is happening?
I think this would be the right thing to do. Maybe it's not actually that hard.
I have forgotten everything about PProfiler and the challenges involved in coordinating shutdown.
Reporter | ||
Comment 2•4 years ago
|
||
I'm guessing you're commenting now because of my recent activity on bug 1528859. 😁
It would certainly be nice to fix this bug here anyway, but I don't know enough either to ascertain how difficult it would be.
Regarding the other bug (each process writes its own shutdown file at the last possible moment, and they can then be combined), I already have a quick fix I worked on on the side months ago, so I'm just pushing it over the line in case some people find it useful.
Also, looking at a test profile in bug 1528859 comment 6, that solution actually outputs a bit more data from sub-processes, so I think it's got its own extra value anyway, whether we fix this bug here or not.
Reporter | ||
Comment 4•3 years ago
|
||
This seems to happen more frequently these days, so I'm increasing the priority.
I believe bug 1638236 should help.
Reporter | ||
Comment 5•2 years ago
|
||
Is this still happening? Recent experiences welcome.
Note that we now have a log that may help:
When viewing the profile in https://profiler.firefox.com, open the web dev tools, go to the Console, and type profile.profileGatheringLog
. It should print an object with one entry being the PID of the parent process, which contains a list of events
.
If you think a process is missing, please check these events for clues, and/or share them here.
Updated•1 year ago
|
Updated•1 year ago
|
Assignee | ||
Updated•1 year ago
|
Assignee | ||
Comment 6•1 year ago
|
||
Assignee | ||
Comment 7•1 year ago
|
||
Depends on D177649
Assignee | ||
Comment 8•1 year ago
|
||
Depends on D177650
Assignee | ||
Comment 9•1 year ago
|
||
Depends on D177651
Assignee | ||
Comment 10•1 year ago
|
||
Depends on D177652
Assignee | ||
Comment 11•1 year ago
|
||
Depends on D177653
Comment 12•3 months ago
|
||
This seems to have been approved a year ago. Is it still viable? What was/is blocking it from landing?
Comment 13•3 months ago
|
||
I think we need to verify the shutdown sequence, and I forgot and nobody screamed at me :'(. Nazim, can you rebase and fix all the clang-tody lints?
Assignee | ||
Comment 14•3 months ago
|
||
Ah yeah I think Markus had asked Nika to get some more help from her. But then we forgot to follow-up. It would be great if you can help! I'll do that soon and will let you know.
Updated•28 days ago
|
Description
•