Crash in mozilla::gfx::DrawTargetCaptureImpl::ReplayToDrawTarget
Categories
(Core :: Graphics: Layers, defect, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr52 | --- | unaffected |
firefox-esr60 | --- | wontfix |
firefox-esr91 | --- | unaffected |
firefox58 | --- | wontfix |
firefox59 | --- | wontfix |
firefox60 | --- | wontfix |
firefox61 | --- | wontfix |
firefox62 | --- | wontfix |
firefox63 | --- | wontfix |
firefox64 | --- | wontfix |
firefox65 | --- | wontfix |
firefox66 | --- | wontfix |
firefox67 | --- | wontfix |
firefox68 | --- | wontfix |
firefox69 | --- | wontfix |
People
(Reporter: philipp, Assigned: rhunt)
References
Details
(5 keywords)
Crash Data
Attachments
(2 files)
9.94 KB,
patch
|
mattwoodrow
:
review+
abillings
:
sec-approval+
|
Details | Diff | Splinter Review |
2.54 KB,
patch
|
mattwoodrow
:
review+
abillings
:
sec-approval+
|
Details | Diff | Splinter Review |
Comment 1•7 years ago
|
||
Updated•7 years ago
|
Updated•7 years ago
|
Updated•7 years ago
|
Comment 2•6 years ago
|
||
Updated•6 years ago
|
Assignee | ||
Comment 3•6 years ago
|
||
Assignee | ||
Comment 4•6 years ago
|
||
Assignee | ||
Comment 5•6 years ago
|
||
Updated•6 years ago
|
Assignee | ||
Comment 6•6 years ago
|
||
Comment 7•6 years ago
|
||
![]() |
||
Comment 8•6 years ago
|
||
Assignee | ||
Comment 9•6 years ago
|
||
Assignee | ||
Comment 11•6 years ago
|
||
Reporter | ||
Comment 12•6 years ago
|
||
Comment 13•6 years ago
|
||
Comment 14•6 years ago
|
||
Assignee | ||
Comment 15•6 years ago
|
||
Assignee | ||
Comment 16•6 years ago
|
||
Assignee | ||
Comment 17•6 years ago
|
||
Assignee | ||
Updated•6 years ago
|
Updated•6 years ago
|
Updated•6 years ago
|
Comment 18•6 years ago
|
||
Assignee | ||
Comment 19•6 years ago
|
||
Assignee | ||
Comment 20•6 years ago
|
||
Comment 21•6 years ago
|
||
![]() |
||
Comment 22•6 years ago
|
||
Assignee | ||
Comment 23•6 years ago
|
||
Assignee | ||
Updated•6 years ago
|
Comment 24•6 years ago
|
||
Any chance you can look at this again for 66 or even 67?
Updated•6 years ago
|
Assignee | ||
Comment 25•6 years ago
|
||
The diagnostic assert is getting triggered, which indicates that we are experiencing memory corruption of the capture command list after writing it.
We write an 'offset' value in the stream and the bit-flipped version immediately after. While replaying the command stream, we validate the offset is followed by a bit-flipped version.
Here's a search of crashes in the last three months in 66 of this assert happening inside of DrawTargetCaptureImpl::ReplayToDrawTarget [1]. I see 43 crashes. There are 30 other crashes in 66 in this function that aren't because of this assert [2].
My take is that this means we're experiencing some ambient memory corruption that is corrupting our command stream, causing these crashes. These streams can become fairly large and are contiguous, maybe making them probabilistic-ally likely to be hit?
I'm not sure of a mitigation for this, besides just leaving this assert to prevent security sensitive crashes from happening. We might be able to get even less crashes by hardening the command stream further.
[1] https://crash-stats.mozilla.com/search/?moz_crash_reason=~MOZ_RELEASE_ASSERT%28advance%20%3D%3D%20redundant%29&signature=~mozilla%3A%3Agfx%3A%3ADrawTargetCaptureImpl%3A%3AReplayToDrawTarget&version=66&version=66.0&version=66.0b10&version=66.0b9&version=66.0b8&version=66.0b7&version=66.0b6&version=66.0b5&version=66.0b4&version=66.0b3&version=66.0b2&version=66.0b1&version=66.0b0&version=66.0a1&product=Firefox&date=%3E%3D2018-11-25T18%3A26%3A00.000Z&date=%3C2019-02-25T18%3A26%3A00.000Z&_facets=signature&_sort=-date&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature
[2] https://crash-stats.mozilla.com/search/?moz_crash_reason=%21~MOZ_RELEASE_ASSERT%28advance%20%3D%3D%20redundant%29&signature=~mozilla%3A%3Agfx%3A%3ADrawTargetCaptureImpl%3A%3AReplayToDrawTarget&version=66&version=66.0&version=66.0b10&version=66.0b9&version=66.0b8&version=66.0b7&version=66.0b6&version=66.0b5&version=66.0b4&version=66.0b3&version=66.0b2&version=66.0b1&version=66.0b0&version=66.0a1&product=Firefox&date=%3E%3D2018-11-25T18%3A26%3A00.000Z&date=%3C2019-02-25T18%3A26%3A00.000Z&_facets=signature&_sort=-date&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature
Updated•6 years ago
|
Assignee | ||
Comment 27•6 years ago
|
||
I'm at a bit of a loss here of how to proceed, so I would say this is stalled.
Updated•6 years ago
|
Updated•5 years ago
|
Comment 28•5 years ago
|
||
The leave-open keyword is there and there is no activity for 6 months.
:rhunt, maybe it's time to close this bug?
Assignee | ||
Updated•5 years ago
|
Comment 29•5 years ago
|
||
Removing employee no longer with company from CC list of private bugs.
Comment 30•3 years ago
|
||
AFAICT, this code no longer exists. Can we close this out?
Comment 31•3 years ago
|
||
Happily. :)
Updated•3 years ago
|
Updated•3 years ago
|
Comment 32•3 years ago
|
||
Since the bug is closed, the stalled keyword is now meaningless.
For more information, please visit auto_nag documentation.
Updated•3 years ago
|
Updated•2 years ago
|
Description
•