Crash in [@ mozilla::ThreadSafeWeakPtr<T>::operator=]
Categories
(Core :: Graphics, defect, P1)
Tracking
()
People
(Reporter: bobowen, Assigned: bobowen)
References
Details
(Keywords: crash)
Crash Data
Attachments
(1 file)
|
48 bytes,
text/x-phabricator-request
|
diannaS
:
approval-mozilla-esr115+
|
Details | Review |
+++ This bug was initially created as a clone of Bug #1825169 +++
Cloning because this crash is still happening, but the fix from bug 1825169 was a genuine issue, fixed other bugs, had follow-ups and was uplifted, so I think re-opening will cause more confusion.
Crash report: https://crash-stats.mozilla.org/report/index/e79c5095-09c8-482c-a7d5-540dc0230328
Reason: EXCEPTION_ACCESS_VIOLATION_READ
Top 10 frames of crashing thread:
0 xul.dll RefPtr<mozilla::detail::ThreadSafeWeakReference>::assign_assuming_AddRef mfbt/RefPtr.h:66
0 xul.dll RefPtr<mozilla::detail::ThreadSafeWeakReference>::assign_with_AddRef mfbt/RefPtr.h:62
0 xul.dll RefPtr<mozilla::detail::ThreadSafeWeakReference>::operator= mfbt/RefPtr.h:190
0 xul.dll mozilla::ThreadSafeWeakPtr<mozilla::gfx::SourceSurface>::operator= mfbt/ThreadSafeWeakPtr.h:218
1 xul.dll mozilla::gfx::DrawTargetRecording::OptimizeSourceSurface const gfx/2d/DrawTargetRecording.cpp:565
2 xul.dll nsLayoutUtils::SurfaceFromElement layout/base/nsLayoutUtils.cpp:7290
3 xul.dll nsLayoutUtils::SurfaceFromElement layout/base/nsLayoutUtils.cpp:7459
4 xul.dll nsLayoutUtils::SurfaceFromElement layout/base/nsLayoutUtils.h:2228
4 xul.dll mozilla::dom::CanvasRenderingContext2D::DrawImage dom/canvas/CanvasRenderingContext2D.cpp:4837
5 xul.dll mozilla::dom::CanvasRenderingContext2D::DrawImage dom/canvas/CanvasRenderingContext2D.h:256
| Assignee | ||
Comment 1•2 years ago
|
||
I've spotted another issue, hopefully this is the real one.
We don't process pending deletions in HasStoredObject.
I could just add a call in there, but it will result in multiple calls to ProcessPendingDeletions (which involves locking) in some code paths, so a little bit of a refactor is needed to remove that.
| Assignee | ||
Comment 2•2 years ago
|
||
| Assignee | ||
Comment 3•2 years ago
|
||
This means we can do a combination of HasStoredObject and AddStoredObject with
only one call to ProcessPendingDeletions, which uses locking.
Comment 5•2 years ago
|
||
| bugherder | ||
Updated•2 years ago
|
Comment 6•2 years ago
|
||
The patch landed in nightly and beta is affected.
:bobowen, is this bug important enough to require an uplift?
- If yes, please nominate the patch for beta approval.
- If no, please set
status-firefox115towontfix.
For more information, please visit BugBot documentation.
| Assignee | ||
Comment 7•2 years ago
|
||
(In reply to BugBot [:suhaib / :marco/ :calixte] from comment #6)
The patch landed in nightly and beta is affected.
:bobowen, is this bug important enough to require an uplift?
- If yes, please nominate the patch for beta approval.
- If no, please set
status-firefox115towontfix.For more information, please visit BugBot documentation.
I think we're too close to release to get it in 115 but maybe it could go in a dot release.
Either way I'll uplift to ESR115 once we've seen the impact.
Updated•2 years ago
|
| Assignee | ||
Comment 9•2 years ago
|
||
(In reply to Ryan VanderMeulen [:RyanVM] from comment #8)
Is this ready for an ESR115 uplift request?
Yes, looks like this has solved the problem.
| Assignee | ||
Comment 10•2 years ago
|
||
Comment on attachment 9340918 [details]
Bug 1838792: Add TryAddStoredObject to DrawEventRecorderPrivate and use in DrawTargetRecording. r=aosmond!
ESR Uplift Approval Request
- If this is not a sec:{high,crit} bug, please state case for ESR consideration: Medium crash rate that was made worse just before start of ESR115.
- User impact if declined: Users still experience tab crashes with some sites using canvas.
- Fix Landed on Version: 116
- Risk to taking this patch: Medium
- Why is the change risky/not risky? (and alternatives if risky): Not putting low because the changes required some refactoring, so they are fairly simple but not trivial.
Comment 11•2 years ago
|
||
Comment on attachment 9340918 [details]
Bug 1838792: Add TryAddStoredObject to DrawEventRecorderPrivate and use in DrawTargetRecording. r=aosmond!
Approved for 115.1esr
Comment 12•2 years ago
|
||
| uplift | ||
Updated•2 years ago
|
Comment 13•2 years ago
•
|
||
This seems to be spiking like crazy on Release 115.0.2 in the last few days. I guess it's not surprising given the lack of backport there, but just FYI that we probably should keep an eye on this next cycle still to verify that the crash rate looks good once this fix goes out.
| Assignee | ||
Comment 14•2 years ago
|
||
(In reply to Ryan VanderMeulen [:RyanVM] from comment #13)
This seems to be spiking like crazy on Release 115.0.2 in the last few days. I guess it's not surprising given the lack of backport there, but just FYI that we probably should keep an eye on this next cycle still to verify that the crash rate looks good once this fix goes out.
No crashes for a week, so looks like I finally fixed the problem.
Description
•