Closed Bug 1072775 Opened 10 years ago Closed 10 years ago

Improve thread-safety assertions for MediaStreamGraph/GraphDriver

Categories

(Core :: WebRTC: Audio/Video, defect)

Other Branch
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla35
Tracking Status
firefox32 --- unaffected
firefox33 --- unaffected
firefox34 --- fixed
firefox35 --- fixed
b2g-v2.1 --- fixed
b2g-v2.2 --- fixed

People

(Reporter: jesup, Assigned: jesup)

References

Details

Attachments

(1 file, 1 obsolete file)

MSG has a lot of requirements about data access and states, but these are largely un-asserted. Adding explicit assertions for all the major cases would greatly speed modifications to MSG by catching things before they become racy-hard-to-debug-oranges. This is likely to be an on-going effort.
Depends on: 1072780
Added OfflineClock shutdown fixes
Attachment #8495043 - Attachment is obsolete: true
Attachment #8495056 - Flags: review?(roc)
Backed out: https://hg.mozilla.org/integration/mozilla-inbound/rev/0c8faa128dff for fatal assertion failures in Linux64 tests like: Assertion failure: lock->locked && pthread_equal(lock->owner, pthread_self()), at /builds/slave/m-in-l64-d-0000000000000000000/build/nsprpub/pr/src/pthreads/ptsynch.c:226 e.g. https://tbpl.mozilla.org/php/getParsedLog.php?id=49067104&tree=Mozilla-Inbound
Comment on attachment 8495056 [details] [diff] [review] Additional assertions for MediaStreamGraph/GraphDriver This needs to land with bug 1072780; see also the duplicate aurora request there: (pasted here) Approval Request Comment [Feature/regressing bug #]: bug 848954 [User impact if declined]: crashes, test oranges, possible sec issues [Describe test coverage new/current, TBPL]: some known oranges are likely due to this. Adds considerable thread-safety assertions, which caught a bug immediately on landing (which someone had been working and had a fix for, but took them far longer to find after it caused an odd crash) [Risks and why]: fairly low. Cleans up locking around a number of pointers; of course in theory it may have missed something, but it added asserts about safety/locking. Main risk would be missing a case where the assert is too draconian (had one of those on the initial landing) and causing an intermittent orange. [String/UUID change made/needed]: none.
Attachment #8495056 - Flags: approval-mozilla-aurora?
Depends on: 1074048
Note: should land with the regression patch in bug 1074048
Comment on attachment 8495056 [details] [diff] [review] Additional assertions for MediaStreamGraph/GraphDriver Aurora+
Attachment #8495056 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: