Hello! For some reason I don't see the messages I posted before, so I'm sorry for possibly duplicating them.
When I'm listening to music I get this error after some time: audio1(hdafg1): audio_write: device timeout, seq=16987, usrbuf=60224/H60224, outbuf=8192/8192 audio1(hdafg1): audio_drain: device timeout, seq=16987, usrbuf=60224/H60224, outbuf=8192/8192 I tried different values for hw.audio1.blk_ms with no luck. I also tried to increase AUDIO_TIMEOUT from 3000 to 9000 in /usr/src/sys/dev/audio/audio.c and it didn't work. I've made some research and found this: - The sound stops working because cv_timedwait_sig() returns EWOULDBLOCK in audio.c:1705 - Then the MD driver receives the hw interrupt (hdaudio_intr) that the RIRB (response input ring buffer) is empty: [ 650.951986] audio_pmixer_process@1 done mixseq=63728 hwbuf=0/960/1440 [ 650.951986] audio_softintr_wr@1 called [ 650.951986] audio_softintr_wr@1 #2 broadcast; trkseq=63729 out=960/1440/1920 [ 650.951986] audio_track_waitio@1 #2 wakeup [ 650.951986] audio_track_play@1 #2 start pstate=1 [ 650.951986] audio_track_play@1 #2 end out=960/1920/1920 f=0/0/441 usr=28224/63504/H65268 [ 650.951986] audio_write@1 #2 while resid=3312 usrbuf=28224/63504/H65268 [ 650.951986] audio_write@1 #2 uiomove(len=1764) usrbuf=28224/65268/C65268 [ 650.951986] audio_write@1 #2 while resid=1548 usrbuf=28224/65268/H65268 [ 650.951986] audio_write@1 #2 sleep usrbuf=65268/H65268 [ 650.961986] hdaudio1: cmd : request 00000F09 00000000 (21) [ 650.961986] hdaudio1: cmd : response 00000000 00000000 [ 650.961986] hdaudio1: hdaudio_intr: 997 /* this a line number in hdaudio.c */ [ 650.961986] hdaudio1: unsol: rirb empty [ 650.961986] hdaudio1: hdaudio_intr: 999 /* this a line number in hdaudio.c */ [ 650.961986] hdaudio1: cmd : request 00000707 00000040 (14) [ 650.961986] hdaudio1: cmd : response 00000000 00000000 [ 650.961986] hdaudio1: cmd : request 00000707 00000080 (21) [ 650.961986] hdaudio1: cmd : response 00000000 00000000 [ 653.951941] audio_track_waitio@1 #2 cv_timedwait_sig failed 35 [ 653.951941] audio1(hdafg1): audio_write: device timeout, seq=63729, usrbuf=65268/H65268, outbuf=1920/1920 [ 653.951941] audio_write@1 #2 done error=35 [ 653.951941] audio_write@1 #2 begin resid=1548 pid=1083.1078 ioflag=0x1 [ 653.951941] audio_write@1 #2 while resid=1548 usrbuf=28224/65268/H65268 [ 653.951941] audio_write@1 #2 sleep usrbuf=65268/H65268 - If I start a player on a just rebooted system right after login, it happens nearly within the same time, 650-700 seconds in dmesg output - It seems sc->sc_lock is locked by some other thread Regards, -- Vitaly