Skip to content

Commit

Permalink
[rpi] Fix bcm2835_audio locking and samples starvation
Browse files Browse the repository at this point in the history
Rework general approach to locking and working with audio worker thread:

- Use flags to signal requested worker action
- Fix submitted buffer calculations to avoid samples starvation
- Protect buffer pointers with locks to fix race condition between callback
  and audio worker thread
- Remove unnecessary vchi_service_use
- Do not use lock to serialize VCHI requests since only one thread issues them now
- Fix unloading signaling per hselasky@ suggestion
- Add output to detect inconsistent callback data caused by possible firmware bug
  raspberrypi/firmware#696
- Add stats/debug sysctls to troubleshoot possible bugs

PR:		213687, 205979, 215194
MFC after:	1 week


git-svn-id: svn+ssh://svn.freebsd.org/base/head@310636 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
  • Loading branch information
gonzo committed Dec 27, 2016
1 parent 364c1d2 commit ed85ea4
Showing 1 changed file with 258 additions and 232 deletions.
Loading

0 comments on commit ed85ea4

Please sign in to comment.