Intermittent SUMMARY: ThreadSanitizer: data race /builds/worker/workspace/obj-build/dist/include/mozilla/Queue.h:223:9 in ShallowSizeOfExcludingThis
Categories
(Core :: XPCOM, defect, P5)
Tracking
()
Tracking | Status | |
---|---|---|
firefox115 | --- | fixed |
People
(Reporter: intermittent-bug-filer, Assigned: jesup)
References
(Blocks 1 open bug)
Details
Attachments
(2 files, 1 obsolete file)
Filed by: alissy [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer?job_id=367288514&repo=try
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/YC4o1p7-TGeNp73N0RGfyg/runs/0/artifacts/public/logs/live_backing.log
Comment 1•4 years ago
•
|
||
Comment 2•4 years ago
|
||
This looks like a race on the memory reporting in ThreadsReporter::CollectReports().
Comment 3•4 years ago
|
||
Comment hidden (Intermittent Failures Robot) |
Comment hidden (Intermittent Failures Robot) |
Comment hidden (Intermittent Failures Robot) |
Comment 8•2 years ago
|
||
No. It looks like this race is related to ThreadEventQueue.
If the line numbers haven't changed since the last failure, the memory reporter is on this line:
n += mBaseQueue->SizeOfIncludingThis(aMallocSizeOf);
Bug 1749610 added a lock for mNestedQueues but not mBaseQueue in this function, for whatever reason.
Comment 9•2 years ago
|
||
Updated•2 years ago
|
Comment 10•2 years ago
|
||
Randell, this might be of interest to you if you are looking for more lock annotations to do, though it looks rather rare.
Assignee | ||
Comment 11•2 years ago
|
||
If the line numbers haven't changed since the last failure, the memory reporter is on this line:
n += mBaseQueue->SizeOfIncludingThis(aMallocSizeOf);
Bug 1749610 added a lock for mNestedQueues but not mBaseQueue in this function, for whatever reason.
It make mBaseQueue a const, so how can there be a data race on it? It's never set outside of the constructor
Assignee | ||
Comment 12•2 years ago
|
||
It looks more like a race on mHead in Queue.h:233
So the data pointed to by mBaseQueue is getting raced on, not mBaseQueue itself. We can move it inside the lock I think
Assignee | ||
Comment 13•2 years ago
|
||
Updated•2 years ago
|
Comment 14•2 years ago
|
||
Comment 15•2 years ago
|
||
bugherder |
Description
•