Add telemetry to measure cases where we isolate macOS video layers
Categories
(Core :: Graphics, task)
Tracking
()
Tracking | Status | |
---|---|---|
firefox104 | --- | fixed |
People
(Reporter: bradwerth, Assigned: bradwerth)
References
(Blocks 1 open bug)
Details
Attachments
(3 files, 1 obsolete file)
The changes in Bug 1653417 are designed to put macOS fullscreen video in a low-power, "detached" state. Though we can't directly detect if we are successfully reaching the detached state, we can measure when we are trying, which is any time that video layer isolation is attempted.
Assignee | ||
Comment 1•3 years ago
|
||
It will also be necessary to note when we actually attempt to enqueue a surface in the video layer. Detached mode is only possible when both code paths are active.
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Comment 2•3 years ago
|
||
This guarantees that any time mMutatedSpecializeVideo is set to true, the next
call to ApplyChanges will receive the value that actually triggered the
mutation. This was probably already true, but this change makes it explicit
and similar to other state changes.
Assignee | ||
Comment 3•3 years ago
|
||
Depends on D129452
Assignee | ||
Comment 4•3 years ago
|
||
Changes in other Bugs will require D129452, which is r+, so I'm going to land it separately and keep this bug open while the remainder is reviewed.
Comment 6•3 years ago
|
||
bugherder |
Comment 8•3 years ago
|
||
Backed out for causing build bustages on TelemetryHistogramEnums.h. CLOSED TREE
Backout link : https://hg.mozilla.org/integration/autoland/rev/da9d46bd54e7f8bc0f6d670e4fe634a16ba398a8
Link to failure log : https://treeherder.mozilla.org/logviewer?job_id=361662055&repo=autoland&lineNumber=8763
Failure message : /builds/worker/workspace/obj-build/dist/include/mozilla/TelemetryHistogramEnums.h:4774:3: error: expected identifier
Comment 10•3 years ago
|
||
Backed out for causing high frequency bc failures in browser_panelUINotifications_multiWindow.
Backout link: https://hg.mozilla.org/integration/autoland/rev/bc92598023d3a538ed5740bfa61022fec7b446d1
INFO - PROCESS-CRASH | browser/components/customizableui/test/browser_panelUINotifications_multiWindow.js | application crashed [@ mozilla::detail::InvalidArrayIndex_CRASH(unsigned long, unsigned long)]
[task 2021-12-17T22:51:24.474Z] 22:51:24 INFO - Crash dump filename: /var/folders/yh/ndl89gtn6ld5tws_rhb495_r000014/T/tmpdunx67ab.mozrunner/minidumps/ED85CEB4-DCF0-44A5-A765-7DB5640D33A5.dmp
[task 2021-12-17T22:51:24.474Z] 22:51:24 INFO - Operating system: Mac OS X
[task 2021-12-17T22:51:24.474Z] 22:51:24 INFO - 10.15.7 19H524
[task 2021-12-17T22:51:24.474Z] 22:51:24 INFO - CPU: amd64
[task 2021-12-17T22:51:24.474Z] 22:51:24 INFO - family 6 model 158 stepping 10
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO - 12 CPUs
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO -
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO - Crash reason: EXC_BAD_ACCESS / KERN_INVALID_ADDRESS
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO - Crash address: 0x0
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO - Mac Crash Info:
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO -
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO - Process uptime: 107 seconds
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO -
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO - Thread 0 GeckoMain (crashed)
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO - 0 libmozglue.dylib!mozilla::detail::InvalidArrayIndex_CRASH(unsigned long, unsigned long) [Assertions.cpp:a7c322ebcfea97985f4ae7708cf94793e89d255e : 50 + 0xe]
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO - rax = 0x000000010d3d4230 rdx = 0x0000000000000000
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO - rcx = 0x68d4ecfe010000a1 rbx = 0x0000000000000000
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO - rsi = 0x000000010d3cf6fa rdi = 0x00007ffee28b9ea0
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO - rbp = 0x00007ffee28ba310 rsp = 0x00007ffee28ba310
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO - r8 = 0x0000000000000000 r9 = 0x0000000000000005
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO - r10 = 0x0000000000000000 r11 = 0x0000000000004b6a
[task 2021-12-17T22:51:24.475Z] 22:51:24 INFO - r12 = 0x0000000110e3ee80 r13 = 0x000000012e38e930
[task 2021-12-17T22:51:24.476Z] 22:51:24 INFO - r14 = 0x000000012e38e8f0 r15 = 0x000000012e38e801
[task 2021-12-17T22:51:24.476Z] 22:51:24 INFO - rip = 0x000000010d3c8de8
Assignee | ||
Comment 11•3 years ago
|
||
(In reply to Sandor Molnar from comment #10)
Backed out for causing high frequency bc failures in browser_panelUINotifications_multiWindow.
Hmm, looks like this has changed the logic to detect when there are no sublayers. I'll build a fix.
Comment 12•3 years ago
|
||
there are also some dt failures that came up.
Assignee | ||
Comment 13•3 years ago
|
||
This is taking me some time to fix correctly. I'll revisit when I'm back from PTO.
Comment 14•3 years ago
|
||
Oh, and the telemetry changes need data review.
Assignee | ||
Comment 15•3 years ago
|
||
The video layer code may change some more as we solve the regressions in Bug 1731815. I'll rework this patch after that code settles down again.
Updated•3 years ago
|
Assignee | ||
Updated•3 years ago
|
Comment 16•3 years ago
|
||
There's a r+ patch which didn't land and no activity in this bug for 2 weeks.
:bradwerth, could you have a look please?
If you still have some work to do, you can add an action "Plan Changes" in Phabricator.
For more information, please visit auto_nag documentation.
Assignee | ||
Comment 17•3 years ago
|
||
I'm cleared off some other things and will move this forward. The patch needs a new part with a test of capturing the telemetry.
Updated•3 years ago
|
Assignee | ||
Comment 18•3 years ago
|
||
Depends on D129453
Assignee | ||
Comment 19•3 years ago
|
||
Updated•3 years ago
|
Comment 20•3 years ago
|
||
Comment on attachment 9283720 [details]
request_GFX_MACOS_VIDEO_LOW_POWER.md
Data Review
- Is there or will there be documentation that describes the schema for the ultimate data set in a public, complete, and accurate way?
Yes, through the Histograms.json file and through the probe dictionary.
- Is there a control mechanism that allows the user to turn the data collection on and off?
Yes, through the standard telemetry preference in the application settings.
- If the request is for permanent data collection, is there someone who will monitor the data over time?
Permanent collection of this data to be monitored by Brad Werth (bwerth@mozilla.com)
- Using the category system of data types on the Mozilla wiki, what collection type of data do the requested measurements fall under?
Category 2, User interaction
- Is the data collection request for default-on or default-off?
Default-on
- Does the instrumentation include the addition of any new identifiers (whether anonymous or otherwise; e.g., username, random IDs, etc. See the appendix for more details)?
No
- Is the data collection covered by the existing Firefox privacy notice?
Yes
- Does the data collection use a third-party collection tool?
No
Result
data-review+
Comment 21•3 years ago
|
||
Comment 22•3 years ago
|
||
Backed out for causing build bustages on TelemetryHistogramEnums.h
Failure log: https://treeherder.mozilla.org/logviewer?job_id=384913995&repo=autoland
Backout link: https://hg.mozilla.org/integration/autoland/rev/8a5bb39ad57a3c8327d633aa6d76078af698e1b7
Assignee | ||
Comment 23•3 years ago
|
||
Ugh, I forgot that "Success" is not allowed as a telemetry enum.
Comment 24•3 years ago
|
||
Comment 25•3 years ago
|
||
bugherder |
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Updated•3 years ago
|
Updated•3 years ago
|
Updated•3 years ago
|
Description
•