NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/52256: panic: audio_init_ringbuffer: blksize=0



>Number:         52256
>Category:       kern
>Synopsis:       panic: audio_init_ringbuffer: blksize=0
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed May 24 11:50:00 +0000 2017
>Originator:     Manuel Bouyer
>Release:        NetBSD  7.99.72
>Organization:
>Environment:
System: NetBSD   7.99.72 NetBSD   7.99.72 (CUBIEBOARD) evbarm
Architecture: earmv7hf
Machine: evbarm
>Description:
	running the test program from kern/52196, portaudio2 will try to open
	all available audio devices, including audio1 which is:
awinhdmiaudio0 at awinio0: HDMI 1.3
audio1 at awinhdmiaudio0: half duplex, playback, mmap
awinhdmiaudio0: Virtual format configured - Format SLINEAR, precision 16, channels 2, frequency 48000

	and this causes this panic:
login: panic: audio_init_ringbuffer: blksize=0
cpu0: Begin traceback...
0xb7d3db7c: netbsd:db_panic+0xc
0xb7d3db94: netbsd:vpanic+0x1b4
0xb7d3dbac: netbsd:snprintf
0xb7d3dbd4: netbsd:audio_initbufs
0xb7d3dcb4: netbsd:audio_open+0x40c
0xb7d3dcec: netbsd:audioopen+0xbc
0xb7d3dd5c: netbsd:spec_open+0x204
0xb7d3dd84: netbsd:VOP_OPEN+0x44
0xb7d3de5c: netbsd:vn_open+0x250
0xb7d3dedc: netbsd:do_open+0xb0
0xb7d3df0c: netbsd:do_sys_openat+0x7c
0xb7d3df34: netbsd:sys_open+0x38
0xb7d3dfac: netbsd:syscall+0x108
cpu0: End traceback...

	awinhdmiaudio0 is play only, it can't record.
	I tried this patch:
--- sys/arch/arm/allwinner/awin_hdmiaudio.c     19 Nov 2015 18:48:22 -0000     1.6
+++ sys/arch/arm/allwinner/awin_hdmiaudio.c     24 May 2017 11:46:37 -0000
@@ -225,7 +225,7 @@ awin_hdmiaudio_attach(device_t parent, d
                return;
        }
 
-       sc->sc_format.mode = AUMODE_PLAY|AUMODE_RECORD;
+       sc->sc_format.mode = AUMODE_PLAY;
        sc->sc_format.encoding = AUDIO_ENCODING_SLINEAR_LE;
        sc->sc_format.validbits = 16;
        sc->sc_format.precision = 16;

	but it didn't help

>How-To-Repeat:
	open audio1 on a cubieboard (or other allwinner-based board I guess)
>Fix:
	workaround: disable awinhdmiaudio in kernel config



Home | Main Index | Thread Index | Old Index