Kernel panic when using audio

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Kernel panic when using audio

Heinrich Rebehn-2
Hi list,

After installing successfully installing OpenBSD on my Raspberry 3 B i am now receiving kernel panics when trying to output audio over a USB audio dongle:

ddb> trace
db_enter() at panic+0x150
panic() at dwc2_device_start+0x448
dwc2_device_start() at usbd_transfer+0x144
usbd_transfer() at uaudio_trigger_output+0x120
uaudio_trigger_output() at audio_start_do+0x94
audio_start_do() at audio_drain+0x204
audio_drain() at audioclose+0x48
audioclose() at spec_close+0x218
spec_close() at VOP_CLOSE+0x4c
VOP_CLOSE() at vn_closefile+0xc8
vn_closefile() at closef+0xa8
closef() at finishdup+0x1bc
finishdup() at dodup3+0x2ec
dodup3() at svc_handler+0x1bc
svc_handler() at do_el0_sync+0xe0
do_el0_sync() at handle_el0_sync+0x68
handle_el0_sync() at __ALIGN_SIZE+0x5e9a7a8
--- trap ---
ddb>

dmesg output:

foo# dmesg                                                                                      
OpenBSD 6.2-current (GENERIC) #174: Wed Feb 14 01:51:02 MST 2018
    [hidden email]:/usr/src/sys/arch/arm64/compile/GENERIC
real mem  = 964751360 (920MB)
avail mem = 908681216 (866MB)
mainbus0 at root: Raspberry Pi 3 Model B Rev 1.2
cpu0 at mainbus0 mpidr 0: ARM Cortex-A53 r0p4
efi0 at mainbus0: UEFI 2.0.5
efi0: Das U-boot rev 0x0
simplefb0 at mainbus0: 656x416
wsdisplay0 at simplefb0 mux 1
wsdisplay0: screen 0-5 added (std, vt100 emulation)
simplebus0 at mainbus0: "soc"
syscon0 at simplebus0: "syscon"
bcmintc0 at simplebus0
bcmdog0 at simplebus0
pluart0 at simplebus0
bcmaux0 at simplebus0
com0 at simplebus0: ns16550, no working fifo
com0: console
dwctwo0 at simplebus0
agtimer0 at simplebus0: tick rate 19200 KHz
simplebus1 at mainbus0: "clocks"
usb0 at dwctwo0: USB revision 2.0
uhub0 at usb0 configuration 1 interface 0 "Broadcom DWC2 root hub" rev 2.00/1.00 addr 1
uhub1 at uhub0 port 1 configuration 1 interface 0 "Standard Microsystems product 0x9514" rev 2.00/2.00 addr 2
smsc0 at uhub1 port 1 configuration 1 interface 0 "Standard Microsystems SMSC9512/14" rev 2.00/2.00 addr 3
smsc0: address b8:27:eb:8d:8e:a8
ukphy0 at smsc0 phy 1: Generic IEEE 802.3u media interface, rev. 3: OUI 0x0001f0, model 0x000c
uaudio0 at uhub1 port 2 configuration 1 interface 0 "ABC C-Media USB Audio Device" rev 1.10/1.00 addr 4
uaudio0: audio rev 1.00, 8 mixer controls
audio0 at uaudio0
uhidev0 at uhub1 port 2 configuration 1 interface 3 "ABC C-Media USB Audio Device" rev 1.10/1.00 addr 4
uhidev0: iclass 3/0
uhid0 at uhidev0: input=4, output=4, feature=0
umass0 at uhub1 port 4 configuration 1 interface 0 "JetFlash Mass Storage Device" rev 2.10/11.00 addr 5
umass0: using SCSI over Bulk-Only
scsibus0 at umass0: 2 targets, initiator 0
sd0 at scsibus0 targ 1 lun 0: <JetFlash, Transcend 16GB, 1100> SCSI4 0/direct removable serial.856410005Y2I6Q9SV6N0
sd0: 15064MB, 512 bytes/sector, 30851072 sectors
vscsi0 at root
scsibus1 at vscsi0: 256 targets
softraid0 at root
scsibus2 at softraid0: 256 targets
bootfile: sd0a:/bsd
boot device: sd0
root on sd0a (24d0157b87573f8c.a) swap on sd0b dump on sd0b
WARNING: / was not properly unmounted
WARNING: CHECK AND RESET THE DATE!
foo#

foo# usbdevs
addr 1: DWC2 root hub, Broadcom
 addr 2: product 0x9514, Standard Microsystems
  addr 3: SMSC9512/14, Standard Microsystems
  addr 4: C-Media USB Audio Device, ABC
  addr 5: Mass Storage Device, JetFlash
foo# pcidump
foo# acpidump
ksh: acpidump: not found


This KP can be triggered by using sox’s play(1) command or by simply doing:

# pkill sndiod
# cat > /dev/audio
<type a few characters and watch KP on serial console>


On a side note: Is it possible to disable the reordering of the libraries on every boot? I takes quite long on the Raspi running from USB stick.

-Heinrich

Reply | Threaded
Open this post in threaded view
|

Re: Kernel panic when using audio

Heinrich Rebehn-2
> On 16. Feb 2018, at 19:46, Heinrich Rebehn <[hidden email]> wrote:
>
> Hi list,
>
> After installing successfully installing OpenBSD on my Raspberry 3 B i am now receiving kernel panics when trying to output audio over a USB audio dongle:
>
> ddb> trace
> db_enter() at panic+0x150
> panic() at dwc2_device_start+0x448
> dwc2_device_start() at usbd_transfer+0x144
> usbd_transfer() at uaudio_trigger_output+0x120
> uaudio_trigger_output() at audio_start_do+0x94
> audio_start_do() at audio_drain+0x204
> audio_drain() at audioclose+0x48
> audioclose() at spec_close+0x218
> spec_close() at VOP_CLOSE+0x4c
> VOP_CLOSE() at vn_closefile+0xc8
> vn_closefile() at closef+0xa8
> closef() at finishdup+0x1bc
> finishdup() at dodup3+0x2ec
> dodup3() at svc_handler+0x1bc
> svc_handler() at do_el0_sync+0xe0
> do_el0_sync() at handle_el0_sync+0x68
> handle_el0_sync() at __ALIGN_SIZE+0x5e9a7a8
> --- trap ---
> ddb>
>
> dmesg output:
>
> foo# dmesg                                                                                      
> OpenBSD 6.2-current (GENERIC) #174: Wed Feb 14 01:51:02 MST 2018
>    [hidden email]:/usr/src/sys/arch/arm64/compile/GENERIC
> real mem  = 964751360 (920MB)
> avail mem = 908681216 (866MB)
> mainbus0 at root: Raspberry Pi 3 Model B Rev 1.2
> cpu0 at mainbus0 mpidr 0: ARM Cortex-A53 r0p4
> efi0 at mainbus0: UEFI 2.0.5
> efi0: Das U-boot rev 0x0
> simplefb0 at mainbus0: 656x416
> wsdisplay0 at simplefb0 mux 1
> wsdisplay0: screen 0-5 added (std, vt100 emulation)
> simplebus0 at mainbus0: "soc"
> syscon0 at simplebus0: "syscon"
> bcmintc0 at simplebus0
> bcmdog0 at simplebus0
> pluart0 at simplebus0
> bcmaux0 at simplebus0
> com0 at simplebus0: ns16550, no working fifo
> com0: console
> dwctwo0 at simplebus0
> agtimer0 at simplebus0: tick rate 19200 KHz
> simplebus1 at mainbus0: "clocks"
> usb0 at dwctwo0: USB revision 2.0
> uhub0 at usb0 configuration 1 interface 0 "Broadcom DWC2 root hub" rev 2.00/1.00 addr 1
> uhub1 at uhub0 port 1 configuration 1 interface 0 "Standard Microsystems product 0x9514" rev 2.00/2.00 addr 2
> smsc0 at uhub1 port 1 configuration 1 interface 0 "Standard Microsystems SMSC9512/14" rev 2.00/2.00 addr 3
> smsc0: address b8:27:eb:8d:8e:a8
> ukphy0 at smsc0 phy 1: Generic IEEE 802.3u media interface, rev. 3: OUI 0x0001f0, model 0x000c
> uaudio0 at uhub1 port 2 configuration 1 interface 0 "ABC C-Media USB Audio Device" rev 1.10/1.00 addr 4
> uaudio0: audio rev 1.00, 8 mixer controls
> audio0 at uaudio0
> uhidev0 at uhub1 port 2 configuration 1 interface 3 "ABC C-Media USB Audio Device" rev 1.10/1.00 addr 4
> uhidev0: iclass 3/0
> uhid0 at uhidev0: input=4, output=4, feature=0
> umass0 at uhub1 port 4 configuration 1 interface 0 "JetFlash Mass Storage Device" rev 2.10/11.00 addr 5
> umass0: using SCSI over Bulk-Only
> scsibus0 at umass0: 2 targets, initiator 0
> sd0 at scsibus0 targ 1 lun 0: <JetFlash, Transcend 16GB, 1100> SCSI4 0/direct removable serial.856410005Y2I6Q9SV6N0
> sd0: 15064MB, 512 bytes/sector, 30851072 sectors
> vscsi0 at root
> scsibus1 at vscsi0: 256 targets
> softraid0 at root
> scsibus2 at softraid0: 256 targets
> bootfile: sd0a:/bsd
> boot device: sd0
> root on sd0a (24d0157b87573f8c.a) swap on sd0b dump on sd0b
> WARNING: / was not properly unmounted
> WARNING: CHECK AND RESET THE DATE!
> foo#
>
> foo# usbdevs
> addr 1: DWC2 root hub, Broadcom
> addr 2: product 0x9514, Standard Microsystems
>  addr 3: SMSC9512/14, Standard Microsystems
>  addr 4: C-Media USB Audio Device, ABC
>  addr 5: Mass Storage Device, JetFlash
> foo# pcidump
> foo# acpidump
> ksh: acpidump: not found
>
>
> This KP can be triggered by using sox’s play(1) command or by simply doing:
>
> # pkill sndiod
> # cat > /dev/audio
> <type a few characters and watch KP on serial console>
>
>
> On a side note: Is it possible to disable the reordering of the libraries on every boot? I takes quite long on the Raspi running from USB stick.
>
> -Heinrich
>

I forgot console output and process list:

OpenBSD/arm64 (foo.fritz.box) (console)

login: panic: kernel diagnostic assertion "xfertype != UE_ISOCHRONOUS || xfer->nframes < DWC
2_MAXISOCPACKETS" failed: file "/usr/src/sys/dev/usb/dwc2/dwc2.c", line 1301
Stopped at      panic+0x154:        TID    PID    UID     PRFLAGS     PFLAGS  C
PU  COMMAND
*402769  37959     99    0x100010          0    0  sndiod
db_enter() at panic+0x150
panic() at dwc2_device_start+0x448
dwc2_device_start() at usbd_transfer+0x144
usbd_transfer() at uaudio_trigger_output+0x120
uaudio_trigger_output() at audio_start_do+0x94
audio_start_do() at audioioctl+0x58
audioioctl() at VOP_IOCTL+0x50
https://www.openbsd.org/ddb.html describes the minimum info required in bug
reports.  Insufficient info makes it difficult to find and fix bugs.
ddb> trace
db_enter() at panic+0x150
panic() at dwc2_device_start+0x448
dwc2_device_start() at usbd_transfer+0x144
usbd_transfer() at uaudio_trigger_output+0x120
uaudio_trigger_output() at audio_start_do+0x94
audio_start_do() at audioioctl+0x58
audioioctl() at VOP_IOCTL+0x50
VOP_IOCTL() at vn_ioctl+0x70
vn_ioctl() at sys_ioctl+0x3a0
sys_ioctl() at svc_handler+0x1bc
svc_handler() at do_el0_sync+0xe0
do_el0_sync() at handle_el0_sync+0x68
handle_el0_sync() at 0x6add22d90
--- trap —
ddb>

foo# ps ax                                                                                      
  PID TT  STAT       TIME COMMAND
    1 ??  Is      0:01.02 /sbin/init
45211 ??  Is      0:00.01 /sbin/slaacd
81273 ??  Ip      0:00.01 slaacd: frontend (slaacd)
14179 ??  Ip      0:00.01 slaacd: engine (slaacd)
16300 ??  Is      0:00.01 dhclient: smsc0 [priv] (dhclient)
 3977 ??  Isp     0:00.01 dhclient: smsc0 (dhclient)
87820 ??  Isp     0:00.04 syslogd: [priv] (syslogd)
41132 ??  Sp      0:00.05 /usr/sbin/syslogd
85555 ??  Is      0:00.01 pflogd: [priv] (pflogd)
40590 ??  Sp      0:00.02 pflogd: [running] -s 160 -i pflog0 -f /var/log/pflog (pflogd)
82905 ??  S<sp    0:00.05 ntpd: ntp engine (ntpd)
86951 ??  Isp     0:00.11 ntpd: dns engine (ntpd)
 9053 ??  I<sp    0:00.00 /usr/sbin/ntpd -s
87164 ??  Ss      0:00.01 /usr/sbin/sshd
42343 ??  Isp     0:00.03 /usr/sbin/smtpd
91223 ??  Ip      0:00.04 smtpd: klondike (smtpd)
38203 ??  Ip      0:00.05 smtpd: control (smtpd)
67581 ??  Ip      0:00.05 smtpd: lookup (smtpd)
 9032 ??  Ip      0:00.05 smtpd: pony express (smtpd)
21414 ??  Ip      0:00.05 smtpd: queue (smtpd)
83199 ??  Ip      0:00.05 smtpd: scheduler (smtpd)
 2796 ??  Isp     0:00.00 sndiod: helper (sndiod)
56535 ??  I<sp    0:00.00 /usr/bin/sndiod
32353 ??  Is      0:00.02 /usr/local/bin/dbus-daemon --system
 8511 ??  S       0:00.09 avahi-daemon: -avahi-daemon: running [foo.local] (avahi-daemon)
24851 ??  I       0:00.01 /usr/local/sbin/avahi-dnsconfd -D
35301 ??  Isp     0:00.01 /usr/sbin/cron
16799 ??  Ss      0:00.16 sshd: root@ttyp0 (sshd)
79878 p0  Ssp     0:00.04 -ksh (ksh)
82098 p0  R+p     0:00.01 ps -ax
86195 00  Is+p    0:00.05 /usr/libexec/getty std.115200 console
foo#

This KP looks a bit different. It was caused by shairport-sync (https://github.com/mikebrady/shairport-sync) via sndiod.

-Heinrich
Reply | Threaded
Open this post in threaded view
|

Re: Kernel panic when using audio

Christopher Barry-2
On Fri, 16 Feb 2018 20:39:42 +0100
Heinrich Rebehn <[hidden email]> wrote:

>> On 16. Feb 2018, at 19:46, Heinrich Rebehn
>> <[hidden email]> wrote:
>>
>> Hi list,
>>
>> After installing successfully installing OpenBSD on my Raspberry 3 B
>> i am now receiving kernel panics when trying to output audio over a
...

>do_el0_sync() at handle_el0_sync+0x68
>handle_el0_sync() at 0x6add22d90
>--- trap —
>ddb>  
>
>foo# ps
>ax                                                                                      
>  PID TT  STAT       TIME COMMAND
>    1 ??  Is      0:01.02 /sbin/init
>45211 ??  Is      0:00.01 /sbin/slaacd
>81273 ??  Ip      0:00.01 slaacd: frontend (slaacd)
>14179 ??  Ip      0:00.01 slaacd: engine (slaacd)
>16300 ??  Is      0:00.01 dhclient: smsc0 [priv] (dhclient)
> 3977 ??  Isp     0:00.01 dhclient: smsc0 (dhclient)
>87820 ??  Isp     0:00.04 syslogd: [priv] (syslogd)
>41132 ??  Sp      0:00.05 /usr/sbin/syslogd
>85555 ??  Is      0:00.01 pflogd: [priv] (pflogd)
>40590 ??  Sp      0:00.02 pflogd: [running] -s 160 -i pflog0
>-f /var/log/pflog (pflogd) 82905 ??  S<sp    0:00.05 ntpd: ntp engine
>(ntpd) 86951 ??  Isp     0:00.11 ntpd: dns engine (ntpd)
> 9053 ??  I<sp    0:00.00 /usr/sbin/ntpd -s
>87164 ??  Ss      0:00.01 /usr/sbin/sshd
>42343 ??  Isp     0:00.03 /usr/sbin/smtpd
>91223 ??  Ip      0:00.04 smtpd: klondike (smtpd)
>38203 ??  Ip      0:00.05 smtpd: control (smtpd)
>67581 ??  Ip      0:00.05 smtpd: lookup (smtpd)
> 9032 ??  Ip      0:00.05 smtpd: pony express (smtpd)
>21414 ??  Ip      0:00.05 smtpd: queue (smtpd)
>83199 ??  Ip      0:00.05 smtpd: scheduler (smtpd)
> 2796 ??  Isp     0:00.00 sndiod: helper (sndiod)
>56535 ??  I<sp    0:00.00 /usr/bin/sndiod
>32353 ??  Is      0:00.02 /usr/local/bin/dbus-daemon --system
> 8511 ??  S       0:00.09 avahi-daemon: -avahi-daemon: running
> [foo.local] (avahi-daemon)
>24851 ??  I       0:00.01 /usr/local/sbin/avahi-dnsconfd -D
>35301 ??  Isp     0:00.01 /usr/sbin/cron
>16799 ??  Ss      0:00.16 sshd: root@ttyp0 (sshd)
>79878 p0  Ssp     0:00.04 -ksh (ksh)
>82098 p0  R+p     0:00.01 ps -ax
>86195 00  Is+p    0:00.05 /usr/libexec/getty std.115200 console
>foo#
>
>This KP looks a bit different. It was caused by shairport-sync
>(https://github.com/mikebrady/shairport-sync) via sndiod.
>
>-Heinrich

I've obviously not been paying attention, because I had no idea people
were actually running avahi and dbus on obsd...

Is this normal nowadays?

--
Regards,
Christopher

Reply | Threaded
Open this post in threaded view
|

Re: Kernel panic when using audio

Heinrich Rebehn-2

> On 17. Feb 2018, at 17:20, Christopher Barry <[hidden email]> wrote:
>
> On Fri, 16 Feb 2018 20:39:42 +0100
> Heinrich Rebehn <[hidden email]> wrote:
>
>>> On 16. Feb 2018, at 19:46, Heinrich Rebehn
>>> <[hidden email]> wrote:
>>>
>>> Hi list,
>>>
>>> After installing successfully installing OpenBSD on my Raspberry 3 B
>>> i am now receiving kernel panics when trying to output audio over a
> ...
>> do_el0_sync() at handle_el0_sync+0x68
>> handle_el0_sync() at 0x6add22d90
>> --- trap —
>> ddb>  
>>
>> foo# ps
>> ax                                                                                      
>> PID TT  STAT       TIME COMMAND
>>   1 ??  Is      0:01.02 /sbin/init
>> 45211 ??  Is      0:00.01 /sbin/slaacd
>> 81273 ??  Ip      0:00.01 slaacd: frontend (slaacd)
>> 14179 ??  Ip      0:00.01 slaacd: engine (slaacd)
>> 16300 ??  Is      0:00.01 dhclient: smsc0 [priv] (dhclient)
>> 3977 ??  Isp     0:00.01 dhclient: smsc0 (dhclient)
>> 87820 ??  Isp     0:00.04 syslogd: [priv] (syslogd)
>> 41132 ??  Sp      0:00.05 /usr/sbin/syslogd
>> 85555 ??  Is      0:00.01 pflogd: [priv] (pflogd)
>> 40590 ??  Sp      0:00.02 pflogd: [running] -s 160 -i pflog0
>> -f /var/log/pflog (pflogd) 82905 ??  S<sp    0:00.05 ntpd: ntp engine
>> (ntpd) 86951 ??  Isp     0:00.11 ntpd: dns engine (ntpd)
>> 9053 ??  I<sp    0:00.00 /usr/sbin/ntpd -s
>> 87164 ??  Ss      0:00.01 /usr/sbin/sshd
>> 42343 ??  Isp     0:00.03 /usr/sbin/smtpd
>> 91223 ??  Ip      0:00.04 smtpd: klondike (smtpd)
>> 38203 ??  Ip      0:00.05 smtpd: control (smtpd)
>> 67581 ??  Ip      0:00.05 smtpd: lookup (smtpd)
>> 9032 ??  Ip      0:00.05 smtpd: pony express (smtpd)
>> 21414 ??  Ip      0:00.05 smtpd: queue (smtpd)
>> 83199 ??  Ip      0:00.05 smtpd: scheduler (smtpd)
>> 2796 ??  Isp     0:00.00 sndiod: helper (sndiod)
>> 56535 ??  I<sp    0:00.00 /usr/bin/sndiod
>> 32353 ??  Is      0:00.02 /usr/local/bin/dbus-daemon --system
>> 8511 ??  S       0:00.09 avahi-daemon: -avahi-daemon: running
>> [foo.local] (avahi-daemon)
>> 24851 ??  I       0:00.01 /usr/local/sbin/avahi-dnsconfd -D
>> 35301 ??  Isp     0:00.01 /usr/sbin/cron
>> 16799 ??  Ss      0:00.16 sshd: root@ttyp0 (sshd)
>> 79878 p0  Ssp     0:00.04 -ksh (ksh)
>> 82098 p0  R+p     0:00.01 ps -ax
>> 86195 00  Is+p    0:00.05 /usr/libexec/getty std.115200 console
>> foo#
>>
>> This KP looks a bit different. It was caused by shairport-sync
>> (https://github.com/mikebrady/shairport-sync) via sndiod.
>>
>> -Heinrich
>
> I've obviously not been paying attention, because I had no idea people
> were actually running avahi and dbus on obsd...
>
> Is this normal nowadays?
>
> --
> Regards,
> Christopher
>
I don’t know what’s normal nowadays. But you do need mdns (avahi) for applications that announce themselves on the LAN, Airplay receiver being one of them.

How is this related to the kernel panic?

-Heinrich
Reply | Threaded
Open this post in threaded view
|

Re: Kernel panic when using audio

Daniel Bolgheroni-6
In reply to this post by Heinrich Rebehn-2
On Fri, Feb 16, 2018 at 06:46:57PM +0000, Heinrich Rebehn wrote:
> On a side note: Is it possible to disable the reordering of the
> libraries on every boot? I takes quite long on the Raspi running from
> USB stick.

# rcctl disable library_aslr

--
db