Closed Bug 1436267 Opened 2 years ago Closed 2 years ago

GraphImpl()->CurrentDriver() == aPreviousDriver assertion failure in SetGraphTime()

Categories

(Core :: Audio/Video: MediaStreamGraph, defect, P2)

59 Branch
defect

Tracking

()

VERIFIED FIXED
mozilla60
Tracking Status
firefox-esr52 --- unaffected
firefox58 --- unaffected
firefox59 --- fixed
firefox60 --- verified

People

(Reporter: karlt, Assigned: karlt)

References

Details

(Keywords: crash)

Crash Data

Attachments

(1 file)

https://crash-stats.mozilla.com/report/index/2689e0c0-5e2d-4999-9294-663810180205
is an NT example of a CurrentDriver() == aPreviousDriver assertion failure in
SetGraphTime() from FallbackToSystemClockDriver() on cubeb error in
AudioCallbackDriver::Stop().  There is also an MSG nsThread waiting for an
event.

If failing to stop the cubeb stream, we don't want to start a fallback thread
(because the intention is to stop the thread).

Usually, mShouldFallbackIfError has been reset to false in DataCallback(),
before Stop() is called.  However, if fallback to a system clock driver due to
cubeb error has already occurred, then mShouldFallbackIfError does not get
reset, and Stop() is still called.

https://crash-stats.mozilla.com/report/index/67bdf274-ea6f-44db-aff8-919860180204
is a similar crash on Linux, though I don't see a second MSG nsThread.
See Also: → 1418820
Comment on attachment 8948929 [details]
bug 1436267 fallback from audio callback to system clock driver on error only once

https://reviewboard.mozilla.org/r/218354/#review224164
Attachment #8948929 - Flags: review?(padenot) → review+
Comment on attachment 8948929 [details]
bug 1436267 fallback from audio callback to system clock driver on error only once

https://reviewboard.mozilla.org/r/218354/#review224166
Pushed by ktomlinson@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/c96fdc3e0d63
fallback from audio callback to system clock driver on error only once r=padenot
https://hg.mozilla.org/mozilla-central/rev/c96fdc3e0d63
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla60
No more crashes in nightly 60 since the patch landed.
Status: RESOLVED → VERIFIED
Comment on attachment 8948929 [details]
bug 1436267 fallback from audio callback to system clock driver on error only once

Approval Request Comment
[Feature/Bug causing the regression]:
https://hg.mozilla.org/mozilla-central/rev/53f055298fa9#l1.165
[User impact if declined]:
crashes with webrtc, web audio
[Is this code covered by automated tests?]:
Not really.  There are many tests, but none cover this error path.
[Has the fix been verified in Nightly?]:
There have been no more crashes reported on Nightly, but volume was low there.
Volume is slightly higher on aurora.
On beta, this assertion is not in the build, and so crashes have different
signatures.
[Needs manual test from QE? If yes, steps to reproduce]:
No.
[List of other uplifts needed for the feature/fix]:
None.
[Is the change risky?]:
No.
[Why is the change risky/not risky?]:
It is a small change.  The consequences of any flaw in the logic would be
failure to attempt recovery from error in system audio libraries.
[String changes made/needed]:
None.
Attachment #8948929 - Flags: approval-mozilla-beta?
Comment on attachment 8948929 [details]
bug 1436267 fallback from audio callback to system clock driver on error only once

crash fix, verified on Nightly, Beta59+
Attachment #8948929 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Blocks: 1426603
You need to log in before you can comment on or make changes to this bug.