VOOZH about

URL: https://bugzilla.mozilla.org/2036839

⇱ 2036839 - 17.77 - 17.53% ts_paint + 1 more (Linux) regression on Wed April 29 2026


Closed Bug 2036839 Opened 1 month ago Closed 1 month ago

17.77 - 17.53% ts_paint + 1 more (Linux) regression on Wed April 29 2026

17.77 - 17.53% ts_paint + 1 more (Linux) regression on Wed April 29 2026
Core
Audio/Video: Playback
unspecified
Unspecified
Unspecified
defect
Points:
---
RESOLVED FIXED
RESOLVED
FIXED
152 Branch
Iteration:
---
a11y-review
Accessibility Severity
Performance Impact
Size Estimate
Webcompat Priority
Webcompat Score
Tracking Status
firefox-esr115 --- unaffected
firefox-esr140 --- unaffected
firefox150 --- unaffected
firefox151 --- unaffected
firefox152 --- fixed
Tracking Status
relnote-firefox
thunderbird_esr115
thunderbird_esr140
firefox-esr115
firefox-esr140
firefox-esr153
firefox150
firefox151
firefox152
firefox153
firefox154
---
QA Whiteboard:
[qa-triage-done-c153/b152]
Has STR:
---
Change Request:
---
Bug Flags:
Signature:
None
This bug is publicly visible.

 
Reporter

Description

β€’
1 month ago
treeherder

Perfherder has detected a talos performance regression from push f6affd94efbcb7de652df67b08e4ad52c437743b. As author of one of the patches included in that push, we need your help to address this regression.

Please acknowledge, and begin investigating this alert within 3 business days, or the patch(es) may be backed out in accordance with our regression policy.

Regression Test Platform Options Absolute values [old vs new]
18% ts_paint (doc) linux2404-64-shippable e10s fission stylo webrender-sw 423.08 -> 498.25
18% ts_paint_webext (doc) linux2404-64-shippable e10s fission stylo webrender-sw 422.58 -> 496.67

Support & Actionable Steps

For questions, please contact afinder@mozilla.com. You can also find help on Slack (#perf-help) or Matrix (#perftest).

Action guide details:

Flags: needinfo?(tboiko)
Assignee

Comment 1

β€’
1 month ago

At the moment I think that linux startup/paint regressed because Vulkan video capability probing runs an extra synchronous vulkantest subprocess during early gfx/video initialization, same class of work as existing vaapitest probing but additive on the critical path.

Flags: needinfo?(tboiko)
Assignee

Comment 2

β€’
1 month ago

However, media.hardware-video-decoding-vulkan.enabled is false by default, so the vulkantest should not be triggered.
(Must be true for FEATURE_HARDWARE_VIDEO_DECODING_VULKAN to call GetDataVulkan() (and thus run vulkantest)).

Assignee

Comment 3

β€’
1 month ago

DMABuf:

  • AppendDmaBufModifiersFromEGLIfEmpty() was called unconditionally from
    SetModifiersToGfxVars() on X11 startup for P010 and NV12 formats,
    triggering EGL initialisation and two driver round-trips per format
    (~80 ms total) even when hardware video decoding is disabled.

  • Move the queries into a new AppendEGLVideoModifiers() method and call it
    from InitPlatformHardwareVideoConfig() only when featureDec.IsEnabled(),
    so machines without hardware video decoding (the default) pay no cost.
    Measured ts_paint regression: +75 ms on Linux (Bug 2036839).

Assignee: nobody β†’ tboiko
Status: NEW β†’ ASSIGNED
Assignee

Comment 4

β€’
1 month ago

Most likely AppendDmaBufModifiersFromEGLIfEmpty() is called unconditionally from SetModifiersToGfxVars() on X11 startup for P010 and NV12, triggering EGL initialisation and two driver round-trips even when hardware video decoding is disabled. Provided a patch, please try if the above patch helps

Comment 5

β€’
1 month ago
Pushed by stransky@redhat.com: https://github.com/mozilla-firefox/firefox/commit/04a81dc2cdeb https://hg.mozilla.org/integration/autoland/rev/27fb0bd2aeeb DMABuf - Defer EGL modifier queries to after hardware video decoding is enabled. r=stransky

Comment 6

β€’
1 month ago
Pushed by abutkovits@mozilla.com: https://github.com/mozilla-firefox/firefox/commit/5e7ae585d5a9 https://hg.mozilla.org/integration/autoland/rev/c275d15ee06b Revert "Bug 2036839 - DMABuf - Defer EGL modifier queries to after hardware video decoding is enabled. r=stransky" for causing bustages in DMABufFormats.cpp.
Assignee

Comment 8

β€’
1 month ago

Let me take a look at this fix, I'll submit an updated version in the next few hours.

Assignee

Comment 9

β€’
1 month ago

DMABuf:

  • AppendDmaBufModifiersFromEGLIfEmpty() was called unconditionally from
    SetModifiersToGfxVars() on X11 startup for P010 and NV12 formats,
    triggering EGL initialisation and two driver round-trips per format
    (~80 ms total) even when hardware video decoding is disabled.

  • Move the queries into a new AppendEGLVideoModifiers() method and call it
    from InitPlatformHardwareVideoConfig() only when featureDec.IsEnabled(),
    so machines without hardware video decoding (the default) pay no cost.
    Measured ts_paint regression: +75 ms on Linux (Bug 2036839).

Great. Tymur, is it the final version I shall review and land or are you going to do more changes here?
Thanks.

Assignee

Comment 11

β€’
1 month ago

Please see an updated commit

Flags: needinfo?(tboiko)
Assignee

Comment 12

β€’
1 month ago

Sorry, my last submitted version created a duplicate revision.
The latest version to land is D298517.

Comment 13

β€’
1 month ago
Pushed by stransky@redhat.com: https://github.com/mozilla-firefox/firefox/commit/92ab17043ca3 https://hg.mozilla.org/integration/autoland/rev/cf9e03a3dbd6 DMABuf - Defer EGL modifier queries to after hardware video decoding is enabled. r=stransky

Comment 14

β€’
1 month ago
bugherder
Status: ASSIGNED β†’ RESOLVED
Closed: 1 month ago
Resolution: --- β†’ FIXED
Target Milestone: --- β†’ 152 Branch

Authored by https://github.com/t-boiko
https://github.com/mozilla/enterprise-firefox/commit/04a81dc2cdeb229586c2826295d3bf4a6b2858d7
[enterprise-main] Bug 2036839 - DMABuf - Defer EGL modifier queries to after hardware video decoding is enabled. r=stransky

Authored by Atila Butkovits
https://github.com/mozilla/enterprise-firefox/commit/5e7ae585d5a964f34c38dac2393c8ae488d6e1e6
[enterprise-main] Revert "Bug 2036839 - DMABuf - Defer EGL modifier queries to after hardware video decoding is enabled. r=stransky" for causing bustages in DMABufFormats.cpp.

Authored by https://github.com/t-boiko
https://github.com/mozilla/enterprise-firefox/commit/92ab17043ca3a8c384856180acc8b722cceb99dc
[enterprise-main] Bug 2036839 - DMABuf - Defer EGL modifier queries to after hardware video decoding is enabled. r=stransky

(In reply to Cosmin Sabou [:CosminS] from comment #14)

https://hg.mozilla.org/mozilla-central/rev/cf9e03a3dbd6

Perfherder has detected a talos performance change from push cf9e03a3dbd6bbdac4b7ca1126533d65384e2ce7.

No action is required from the author; this comment is provided for informational purposes only.

Improvement Test Platform Options Absolute values [old vs new]
13% ts_paint_webext (doc) linux2404-64-shippable e10s fission stylo webrender-sw 502.58 -> 436.75
12% ts_paint (doc) linux2404-64-shippable e10s fission stylo webrender-sw 480.96 -> 425.17
8% sessionrestore_no_auto_restore (doc) linux2404-64-shippable e10s fission stylo webrender-sw 771.21 -> 709.25
6% startup_about_home_paint (doc) linux2404-64-shippable e10s fission stylo webrender-sw 947.25 -> 886.83

Need Help or Information?

If you have any questions, please reach out to fbilt@mozilla.com. Alternatively, you can find help on Slack by joining #perf-help, and on Matrix you can find help by joining #perftest.

Details of the alert can be found in the alert summary, including links to graphs and comparisons for each of the affected tests.

Attachment #9583031 - Attachment is obsolete: true
QA Whiteboard: [qa-triage-done-c153/b152]
You need to log in before you can comment on or make changes to this bug.