The plan is to make sndiod need to control volume knobs. This diff adds the AUDIO_MIXER_xxx ioctls to the "audio" pledge. Another option would be to introduce a new "audioctl" promise, but IMHO we don't seed such fine-grained promises.
OK? Index: kern_pledge.c =================================================================== RCS file: /cvs/src/sys/kern/kern_pledge.c,v retrieving revision 1.256 diff -u -p -u -p -r1.256 kern_pledge.c --- kern_pledge.c 8 Dec 2019 23:08:59 -0000 1.256 +++ kern_pledge.c 2 Feb 2020 09:02:27 -0000 @@ -1123,6 +1123,9 @@ pledge_ioctl(struct proc *p, long com, s case AUDIO_SETPAR: case AUDIO_START: case AUDIO_STOP: + case AUDIO_MIXER_DEVINFO: + case AUDIO_MIXER_READ: + case AUDIO_MIXER_WRITE: if (fp->f_type == DTYPE_VNODE && vp->v_type == VCHR && cdevsw[major(vp->v_rdev)].d_open == audioopen)