Closed Bug 1774916 Opened 4 years ago Closed 4 years ago

The entire screen sometimes freezes when moving tabs to another window

Categories

(Core :: Graphics, defect)

Firefox 103
Unspecified
Linux
defect

Tracking

()

VERIFIED FIXED
104 Branch
Tracking Status
firefox-esr91 --- unaffected
firefox-esr102 --- fixed
firefox101 --- unaffected
firefox102 --- wontfix
firefox103 --- fixed
firefox104 --- fixed

People

(Reporter: tgnff242, Assigned: lsalzman)

References

(Regression)

Details

(Keywords: nightly-community, regression)

Attachments

(1 file)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:103.0) Gecko/20100101 Firefox/103.0

Steps to reproduce:

  1. Have two windows open.
  2. Select all the tabs from one and drag them to the other.

Actual results:

Sometimes the entire screen, including the DE/WM, excluding the mouse cursor freezes. Sometimes, switching to a TTY and killing the WM/Compositor restores them. Killing Firefox works always. There's nothing notable in the logs.

Expected results:

Here's a crash report after I sent SIGABRT to the main process: https://crash-stats.mozilla.org/report/index/4120dd32-132b-49d3-b8b8-e0e750220618

mozregression result:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=e0e15fc6dbf02a00e0c65316b4487782d9b3bc89&tochange=b2e68253c41fe079f6ea05b3617f672f6caae966

Has STR: --- → yes
Regressed by: 1685375

:tgnff242, could you try to find a regression range using for example mozregression?

Set release status flags based on info from the regressing bug 1685375

:lsalzman, since you are the author of the regressor, bug 1685375, could you take a look?
For more information, please visit auto_nag documentation.

Flags: needinfo?(lsalzman)

The bug has a release status flag that shows some version of Firefox is affected, thus it will be considered confirmed.

Status: UNCONFIRMED → NEW
Ever confirmed: true
Blocks: gfx-triage
Severity: -- → S3
OS: Unspecified → Linux
Assignee: nobody → lsalzman
Status: NEW → ASSIGNED
No longer blocks: gfx-triage
Flags: needinfo?(lsalzman)
Pushed by lsalzman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/72f7919cc0eb Avoid opening temporary X display in error handler. r=aosmond,gfx-reviewers,nical

Backed out for causing leaks in nsStringBuffer.

Push with failures

Failure log

Backout link

[task 2022-06-27T16:48:58.492Z] 16:48:58     INFO - TEST-START | dom/webgpu/mochitest/test_submit_render_empty.worker.html
[task 2022-06-27T16:48:58.751Z] 16:48:58     INFO - GECKO(1628) | error: XDG_RUNTIME_DIR not set in the environment.
[task 2022-06-27T16:48:58.754Z] 16:48:58     INFO - GECKO(1628) | [2022-06-27T16:48:58Z WARN  wgpu_hal::gles::egl] 	EGL context: -robust access
[task 2022-06-27T16:48:58.767Z] 16:48:58     INFO - GECKO(1628) | Validation error without device target: no suitable adapter found
[task 2022-06-27T16:48:58.771Z] 16:48:58     INFO - GECKO(1628) | MEMORY STAT | vsize 2536MB | residentFast 145MB | heapAllocated 11MB
[task 2022-06-27T16:48:58.783Z] 16:48:58     INFO - TEST-OK | dom/webgpu/mochitest/test_submit_render_empty.worker.html | took 292ms
[task 2022-06-27T16:48:58.947Z] 16:48:58     INFO - TEST-START | Shutdown
[task 2022-06-27T16:48:58.947Z] 16:48:58     INFO - Passed:  22
[task 2022-06-27T16:48:58.948Z] 16:48:58     INFO - Failed:  0
[task 2022-06-27T16:48:58.948Z] 16:48:58     INFO - Todo:    0
[task 2022-06-27T16:48:58.948Z] 16:48:58     INFO - Mode:    e10s
[task 2022-06-27T16:48:58.948Z] 16:48:58     INFO - Slowest: 1561ms - /tests/dom/webgpu/mochitest/test_basic_canvas.worker.html
[task 2022-06-27T16:48:58.950Z] 16:48:58     INFO - SimpleTest FINISHED
[task 2022-06-27T16:48:58.952Z] 16:48:58     INFO - TEST-INFO | Ran 1 Loops
[task 2022-06-27T16:48:58.953Z] 16:48:58     INFO - SimpleTest FINISHED
[task 2022-06-27T16:48:59.083Z] 16:48:59     INFO - GECKO(1628) | [Child 1723, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-06-27T16:48:59.085Z] 16:48:59     INFO - GECKO(1628) | [Child 1723, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-06-27T16:48:59.115Z] 16:48:59     INFO - GECKO(1628) | [Child 1723, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-06-27T16:48:59.136Z] 16:48:59     INFO - GECKO(1628) | [Child 1723, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-06-27T16:48:59.154Z] 16:48:59     INFO - GECKO(1628) | [Child 1723, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-06-27T16:48:59.154Z] 16:48:59     INFO - GECKO(1628) | [Child 1723, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-06-27T16:48:59.186Z] 16:48:59     INFO - GECKO(1628) | [Child 1723, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-06-27T16:48:59.222Z] 16:48:59     INFO - GECKO(1628) | [Parent 1628, Main Thread] WARNING: '!CanHandleWith(aPresContext)', file /builds/worker/checkouts/gecko/dom/events/IMEStateManager.cpp:498
[task 2022-06-27T16:48:59.223Z] 16:48:59     INFO - GECKO(1628) | [Child 1784, Main Thread] WARNING: '!CanHandleWith(aPresContext)', file /builds/worker/checkouts/gecko/dom/events/IMEStateManager.cpp:498
[task 2022-06-27T16:48:59.251Z] 16:48:59     INFO - GECKO(1628) | JavaScript error: resource://gre/modules/AsyncShutdown.jsm, line 577: NotFoundError: No such JSWindowActor 'SpecialPowers'
<...>
[task 2022-06-27T16:49:02.109Z] 16:49:02     INFO - TEST-PASS | leakcheck | tab no leaks detected!
[task 2022-06-27T16:49:02.110Z] 16:49:02     INFO - leakcheck | Processing leak log file /tmp/tmpmfysf9e4.mozrunner/runtests_leaks.log
[task 2022-06-27T16:49:02.110Z] 16:49:02     INFO - 
[task 2022-06-27T16:49:02.111Z] 16:49:02     INFO - == BloatView: ALL (cumulative) LEAK AND BLOAT STATISTICS, default process 1628
[task 2022-06-27T16:49:02.112Z] 16:49:02     INFO - 
[task 2022-06-27T16:49:02.112Z] 16:49:02     INFO -      |<----------------Class--------------->|<-----Bytes------>|<----Objects---->|
[task 2022-06-27T16:49:02.113Z] 16:49:02     INFO -      |                                      | Per-Inst   Leaked|   Total      Rem|
[task 2022-06-27T16:49:02.114Z] 16:49:02     INFO -    0 |TOTAL                                 |       61      200| 1047594       25|
[task 2022-06-27T16:49:02.117Z] 16:49:02     INFO - 1915 |nsStringBuffer                        |        8      200|  139307       25|
[task 2022-06-27T16:49:02.118Z] 16:49:02     INFO - 
[task 2022-06-27T16:49:02.119Z] 16:49:02     INFO - nsTraceRefcnt::DumpStatistics: 2066 entries
[task 2022-06-27T16:49:02.120Z] 16:49:02     INFO - TEST-INFO | leakcheck | default leaked 25 nsStringBuffer
[task 2022-06-27T16:49:02.120Z] 16:49:02     INFO - TEST-UNEXPECTED-FAIL | leakcheck | default 200 bytes leaked (nsStringBuffer)
[task 2022-06-27T16:49:02.120Z] 16:49:02     INFO - 
[task 2022-06-27T16:49:02.121Z] 16:49:02     INFO - leakcheck | Processing leak log file /tmp/tmpmfysf9e4.mozrunner/runtests_leaks_tab_pid1792.log
[task 2022-06-27T16:49:02.122Z] 16:49:02     INFO - TEST-PASS | leakcheck | tab no leaks detected!
[task 2022-06-27T16:49:02.122Z] 16:49:02     INFO - runtests.py | Running tests: end.
[task 2022-06-27T16:49:02.147Z] 16:49:02     INFO -  Failed to unload module: Module b'30\n' not loaded
[task 2022-06-27T16:49:02.152Z] 16:49:02     INFO -  Failed to unload module: Module b'31\n' not loaded
[task 2022-06-27T16:49:02.157Z] 16:49:02     INFO -  Failed to unload module: Module b'32\n' not loaded
[task 2022-06-27T16:49:02.162Z] 16:49:02     INFO -  Failed to unload module: Module b'33\n' not loaded
[task 2022-06-27T16:49:02.163Z] 16:49:02     INFO - Buffered messages finished
[task 2022-06-27T16:49:02.164Z] 16:49:02     INFO -  0 INFO TEST-START | Shutdown
[task 2022-06-27T16:49:02.164Z] 16:49:02     INFO -  1 INFO Passed:  22
[task 2022-06-27T16:49:02.164Z] 16:49:02     INFO -  2 INFO Failed:  0
[task 2022-06-27T16:49:02.165Z] 16:49:02     INFO -  3 INFO Todo:    0
[task 2022-06-27T16:49:02.165Z] 16:49:02     INFO -  4 INFO Mode:    e10s
[task 2022-06-27T16:49:02.166Z] 16:49:02     INFO -  5 INFO SimpleTest FINISHED
[task 2022-06-27T16:49:02.166Z] 16:49:02     INFO - Buffered messages finished
[task 2022-06-27T16:49:02.166Z] 16:49:02     INFO - SUITE-END | took 19s
[task 2022-06-27T16:49:02.205Z] 16:49:02     INFO - Return code: 0
[task 2022-06-27T16:49:02.205Z] 16:49:02    ERROR - Got 1 unexpected statuses
[task 2022-06-27T16:49:02.206Z] 16:49:02     INFO - TinderboxPrint: mochitest-mochitest-webgpu<br/>20/<em class="testfail">1</em>/0
[task 2022-06-27T16:49:02.206Z] 16:49:02  WARNING - # TBPL WARNING #
[task 2022-06-27T16:49:02.206Z] 16:49:02  WARNING - setting return code to 1
Flags: needinfo?(lsalzman)
Pushed by lsalzman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/c6ce0591ac5d Avoid opening temporary X display in error handler. r=aosmond,gfx-reviewers,nical
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 104 Branch
Status: RESOLVED → VERIFIED
Flags: needinfo?(lsalzman)

The patch landed in nightly and beta is affected.
:lsalzman, is this bug important enough to require an uplift?

  • If yes, please nominate the patch for beta approval.
  • If no, please set status-firefox103 to wontfix.

For more information, please visit auto_nag documentation.

Flags: needinfo?(lsalzman)

Comment on attachment 9283091 [details]
Bug 1774916 - Avoid opening temporary X display in error handler. r?aosmond

Beta/Release Uplift Approval Request

  • User impact if declined: The browser may completely freeze, preventing it from handling errors or crashing gracefully.
  • Is this code covered by automated tests?: Unknown
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: No
  • If yes, steps to reproduce:
  • List of other uplifts needed: None
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): Just avoids querying an X11 display during an error condition, which is a simple net simplification.
  • String changes made/needed:
  • Is Android affected?: No

ESR Uplift Approval Request

  • If this is not a sec:{high,crit} bug, please state case for ESR consideration:
  • User impact if declined:
  • Fix Landed on Version: 104
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky):
Flags: needinfo?(lsalzman)
Attachment #9283091 - Flags: approval-mozilla-esr102?
Attachment #9283091 - Flags: approval-mozilla-beta?

Comment on attachment 9283091 [details]
Bug 1774916 - Avoid opening temporary X display in error handler. r?aosmond

Approved for 103.0b3, thanks.

Attachment #9283091 - Flags: approval-mozilla-beta? → approval-mozilla-beta+

Comment on attachment 9283091 [details]
Bug 1774916 - Avoid opening temporary X display in error handler. r?aosmond

Approved for 102.1esr.

Attachment #9283091 - Flags: approval-mozilla-esr102? → approval-mozilla-esr102+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: