Fix a bunch of locking/race issues in cache2
Categories
(Core :: Networking: Cache, defect, P2)
Tracking
()
People
(Reporter: jesup, Assigned: jesup)
References
(Blocks 1 open bug)
Details
(Keywords: csectype-race, sec-moderate, Whiteboard: [post-critsmash-triage][post-critsmash-triage][adv-main97+r])
Attachments
(1 file)
48 bytes,
text/x-phabricator-request
|
RyanVM
:
approval-mozilla-beta+
|
Details | Review |
Clang static thread-safety analysis found a number of issues in netwerk/cache2. See the patch. I moved mPinned to an Atomic to avoid adding a bunch of additional locking (similar to mDoomed). (I'll note that if mDoomed hadn't already been moved to an Atomic in bug 1692299 a few days ago, I would have had fixes for that too - it had flagged that as not locked properly). Also does some minor related cleanup (I think we were locking around mDoomed in at least one place still).
Updated•3 years ago
|
Assignee | ||
Comment 1•3 years ago
|
||
Updated•3 years ago
|
Comment 2•3 years ago
|
||
Landed: https://hg.mozilla.org/integration/autoland/rev/7c1a1109d729b5c52f547c2836c34a8a358b9464
Backed out for causing build bustages in CacheEntry.cpp:
https://hg.mozilla.org/integration/autoland/rev/baba2bcc677f19df575c4f50c3541661395ce41f
Push with failures: https://treeherder.mozilla.org/jobs?repo=autoland&group_state=expanded&resultStatus=testfailed%2Cbusted%2Cexception&fromchange=adcafb4a8a20400decd88d0b7501d407afa51aa4&tochange=baba2bcc677f19df575c4f50c3541661395ce41f&selectedTaskRun=EtFAzYXdQcGlK8TV-XZShQ.0
Failure log: https://treeherder.mozilla.org/logviewer?job_id=363868651&repo=autoland&lineNumber=21507
/builds/worker/checkouts/gecko/netwerk/cache2/CacheEntry.cpp:1899:20: error: out-of-line definition of 'SizeOfExcludingThis' does not match any declaration in 'mozilla::net::CacheEntry'
/builds/worker/checkouts/gecko/netwerk/cache2/CacheEntry.cpp:1922:20: error: out-of-line definition of 'SizeOfIncludingThis' does not match any declaration in 'mozilla::net::CacheEntry'
Assignee | ||
Comment 3•3 years ago
|
||
Aha. There was a mis-merge from hg histedit. Fixed
Updated•3 years ago
|
Comment 4•3 years ago
|
||
Comment 5•3 years ago
|
||
The patch landed in nightly and beta is affected.
:jesup, is this bug important enough to require an uplift?
If not please set status_beta
to wontfix
.
For more information, please visit auto_nag documentation.
Assignee | ||
Comment 6•3 years ago
|
||
Comment on attachment 9257733 [details]
Bug 1747439: netwerk/cache2 cleanup r=#necko-reviewers
Beta/Release Uplift Approval Request
- User impact if declined: Possible data races
- Is this code covered by automated tests?: Yes
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: Yes
- 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): adds/moves a few locks. Locks verified by static analysis, and baked on Nightly for a few weeks with no reported deadlocks
- String changes made/needed: none
Comment 7•3 years ago
|
||
Comment on attachment 9257733 [details]
Bug 1747439: netwerk/cache2 cleanup r=#necko-reviewers
Approved for 97.0b9.
Comment 8•3 years ago
|
||
uplift |
Updated•3 years ago
|
Updated•3 years ago
|
Updated•3 years ago
|
Updated•2 years ago
|
Description
•