Hi, KASSERT added to pad_attach() by this commit fires on macppc with mixerctl(1):
---- # cd /usr/tests/usr.bin/mixerctl && atf-run ... tc-start: ..., nflag [...] panic: kernel diagnostic assertion "KERNEL_LOCKED_P()" failed: file "/usr/src/sys/dev/pad/pad.c", line 214 [...] cpu0: Begin traceback... [...] ... vpanic ... [...] ... kern_assert ... [...] ... pad_attach ... [...] ... config_attach_pseudo ... [...] ... pad_open ... [...] ... spec_open ... [...] ... VOP_OPEN ... [...] ... vn_open ... [...] ... do_open ... [...] ... do_sys_openat ... [...] ... sys_open ... [...] ... syscall ... [...] user SC trap #5 by ... ---- (copy from framebuffer console by hands) I don't understand why this happens on macppc, while does not on majority of other machines. Can this behavior depend on underlying audio(4) driver? If so, what should I do to fix? Thanks, rin On 2021/06/14 19:14, Taylor R Campbell wrote:
Module Name: src Committed By: riastradh Date: Mon Jun 14 10:14:58 UTC 2021 Modified Files: src/sys/dev/pad: pad.c Log Message: pad(4): Make this exclusively a cloning device. padN numbering never corresponded with audioM numbering except by accident, so the non-cloning device never worked reliably for scripting. This simplifies the logic substantially. While here, fix drvctl detach race. To generate a diff of this commit: cvs rdiff -u -r1.70 -r1.71 src/sys/dev/pad/pad.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.