HomeFreeBSD

To support userspace audio daemons like Virtual OSS, /dev/sndstat is

Description

To support userspace audio daemons like Virtual OSS, /dev/sndstat is
made writeable by the root user. Userspace audio daemons can add or
update an entry in /dev/sndstat by doing a single system write call to
any /dev/sndstat file descriptor handle. When the audio daemon closes the
file handle or is killed the entry disappears.

While at it, cleanup the sound status code a bit:

  • keep the device list sorted to avoid sorting the list every time a /dev/sndstat read request is made.
  • factor out locking into a pair of locking macros.
  • use the sound status lock to protect all per file handle states, when generating the output for /dev/sndstat and when removing or adding sound status devices. This way sndstat_acquire() and sndstat_release() become superfluous and can be removed.

Reviewed by: mav @
Differential Revision: https://reviews.freebsd.org/D5191

Details

Provenance
hselaskyAuthored on
Reviewer
mav
Differential Revision
D5191: Make /dev/sndstat writeable
Parents
rS295439: Explicitly add unmarked bin/ binaries to the runtime package.
Branches
Unknown
Tags
Unknown