Crash in mozilla::layers::APZCTreeManagerParent::RecvUpdateZoomConstraints
Categories
(Core :: Panning and Zooming, defect, P3)
Tracking
()
Tracking | Status | |
---|---|---|
thunderbird_esr102 | --- | fixed |
firefox-esr60 | --- | wontfix |
firefox-esr102 | 110+ | fixed |
firefox62 | --- | wontfix |
firefox63 | --- | wontfix |
firefox64 | --- | wontfix |
firefox65 | --- | wontfix |
firefox66 | --- | wontfix |
firefox68 | --- | wontfix |
firefox69 | --- | wontfix |
firefox70 | --- | wontfix |
firefox108 | --- | wontfix |
firefox109 | --- | wontfix |
firefox110 | --- | fixed |
People
(Reporter: marcia, Assigned: dlrobertson)
References
Details
(Keywords: crash, regression, Whiteboard: [tbird crash])
Crash Data
Attachments
(2 files)
48 bytes,
text/x-phabricator-request
|
RyanVM
:
approval-mozilla-esr102+
|
Details | Review |
48 bytes,
text/x-phabricator-request
|
RyanVM
:
approval-mozilla-esr102+
|
Details | Review |
Updated•7 years ago
|
Comment 1•7 years ago
|
||
Comment 2•7 years ago
|
||
Reporter | ||
Comment 3•7 years ago
|
||
Updated•7 years ago
|
Comment 4•7 years ago
|
||
Updated•7 years ago
|
Comment 5•7 years ago
|
||
Comment 6•7 years ago
|
||
Updated•6 years ago
|
Comment hidden (Intermittent Failures Robot) |
Updated•3 years ago
|
Comment 8•3 years ago
|
||
It looks like Florian figured out a way to reproduce this crash reliably. See bug 1742797 comment 85.
Comment 9•3 years ago
|
||
Those steps to reproduce worked, but as soon as another browser chrome test was added (less than a day after that bug landed) they no longer reproduced. The new test must have changed the chunking or order or something about the tests. Still possible to debug by pushing to try on a month+ old tip though.
Updated•3 years ago
|
![]() |
||
Comment 10•3 years ago
|
||
FWIW the release of Thunderbird 102 seems to have resulted in an increase in the frequency of this crash.
Assignee | ||
Comment 11•3 years ago
|
||
Did some debugging and found that we're getting a null mApzcTreeManager
in the call to CompositorBridgeParent::AllocateAPZCTreeManagerParent in ContentCompositorBridgeParent::AllocPAPZCTreeManagerParent. I haven't verified this, but I'm guessing this occurs when CompositorBridgeParent::StopAndClearResources sets the mApzcTreeManager
to null here. Perhaps we should enter this block if mPaused is set or mCanSend
has been set by CompositorBridgeParent::ActorDestroy or CompositorBridgeParent::RecvWillClose.
Assignee | ||
Comment 12•3 years ago
|
||
(In reply to Dan Robertson (:dlrobertson) from comment #11)
Did some debugging and found that we're getting a null
mApzcTreeManager
in the call to CompositorBridgeParent::AllocateAPZCTreeManagerParent in ContentCompositorBridgeParent::AllocPAPZCTreeManagerParent. I haven't verified this, but I'm guessing this occurs when CompositorBridgeParent::StopAndClearResources sets themApzcTreeManager
to null here. Perhaps we should enter this block if mPaused is set ormCanSend
has been set by CompositorBridgeParent::ActorDestroy or CompositorBridgeParent::RecvWillClose.
This theory appears to be incorrect, as I'd expect the assert to be different in this try run
Assignee | ||
Comment 13•3 years ago
|
||
Fix static-analysis warnings in ContentCompositorBridgeParent.
Assignee | ||
Comment 14•3 years ago
|
||
Depends on D164682
Comment 15•3 years ago
|
||
Comment 16•3 years ago
|
||
Backed out for causing build bustages on ContentCompositorBridgeParent.cpp
- Backout link
- Push with failures
- Failure Log
- Failure line: builds/worker/checkouts/gecko/gfx/layers/ipc/ContentCompositorBridgeParent.cpp:213:22: error: unused variable 'id' [-Werror=unused-variable]
Comment 17•3 years ago
|
||
I guess we need to do this sort of thing.
Assignee | ||
Comment 18•3 years ago
|
||
(In reply to Botond Ballo [:botond] from comment #17)
I guess we need to do this sort of thing.
That would work, but I may just use a standard iterator and use it.second
. Is there another reason to unwrap the iterator like that?
Comment 19•3 years ago
|
||
(In reply to Dan Robertson (:dlrobertson) from comment #18)
(In reply to Botond Ballo [:botond] from comment #17)
I guess we need to do this sort of thing.
That would work, but I may just use a standard iterator and use
it.second
. Is there another reason to unwrap the iterator like that?
That works too. (One tiny nit, I would call it something like entry
, since an "iterator" is something that dereferences to an element of the range being iterated, while the range-for gives you the result of dereferencing a (hidden) iterator.)
Comment 20•3 years ago
|
||
Comment 21•3 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/c220d03cfb7f
https://hg.mozilla.org/mozilla-central/rev/00fb6658b130
Comment 22•3 years ago
|
||
Not sure this is really worth backporting to Beta since Firefox doesn't appear to be crashing at all and TB is only crashing on 102, but I'm open to a nomination if y'all think it'd be worth it. It does graft cleanly to Beta & ESR.
Assignee | ||
Comment 23•3 years ago
|
||
(In reply to Ryan VanderMeulen [:RyanVM] from comment #22)
Not sure this is really worth backporting to Beta since Firefox doesn't appear to be crashing at all and TB is only crashing on 102, but I'm open to a nomination if y'all think it'd be worth it. It does graft cleanly to Beta & ESR.
Thunderbird is based on ESR right? If so it might be worthwhile to backport to ESR, since the next ESR that would contain this isn't for some time. I would like to let this sit in nightly for a bit before a potential backport to ESR. IMO this is a low-risk patch, but I'd still like to have it tested in nightly a bit first.
Comment 24•3 years ago
|
||
Yeah, let's revisit next cycle.
Comment 25•3 years ago
•
|
||
(In reply to Jonathan Watt [:jwatt] from comment #10)
FWIW the release of Thunderbird 102 seems to have resulted in an increase in the frequency of this crash.
Yes. Thanks for catching that.
And an interesting, odd peak at 102.3.x, then dropped off weeks later. https://crash-stats.mozilla.org/signature/?signature=mozilla%3A%3Alayers%3A%3AAPZCTreeManagerParent%3A%3ARecvUpdateZoomConstraints&date=%3E%3D2022-06-30T15%3A14%3A00.000Z&date=%3C2022-12-31T15%3A14%3A00.000Z#graphs Which is curious, because were were still massively migrating users from version 91, even in November.
Assignee | ||
Comment 26•3 years ago
|
||
(In reply to Ryan VanderMeulen [:RyanVM] from comment #24)
Yeah, let's revisit next cycle.
The patch didn't seem to cause any regressions in nightly, so it might be worth a uplift to esr to check if it fixes the issue for thunderbird.
Comment 27•3 years ago
|
||
Frequency does seem lower for TB these days, but feel free to nominate.
Comment 28•3 years ago
|
||
Also disproportionately affects linux users of Thunderbird.
Assignee | ||
Comment 29•3 years ago
|
||
Comment on attachment 9308274 [details]
Bug 1488886 - AllocPAPZCTreeManager should gracefully fail if APZ is not enabled. r=botond
ESR Uplift Approval Request
- If this is not a sec:{high,crit} bug, please state case for ESR consideration: Thunderbird is based on ESR and this bug largely impacts thunderbird. The next ESR release that would include this doesn't occur for quite some time.
- User impact if declined: Crashes may occur from time to time on thunderbird.
- Fix Landed on Version: 110
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): Added a check to
AllocPAPZCTreeManager
to gracefully fail if APZ is not enabled.
Assignee | ||
Updated•3 years ago
|
Comment 30•3 years ago
|
||
Comment on attachment 9308273 [details]
Bug 1488886 - Fix static-analysis warnings. r=botond
Approved for 102.8esr.
Updated•3 years ago
|
Comment 31•3 years ago
|
||
bugherder uplift |
Updated•3 years ago
|
Description
•