[email protected] writes:

>>Synopsis:     pledge kills sndiod when watching video with mplayer
>>Category:     system
>>Environment:
>       System      : OpenBSD 5.9
>       Details     : OpenBSD 5.9-beta (GENERIC.MP) #1781: Sat Dec 26 23:04:18 
> MST 2015
>                        
> [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
>
>       Architecture: OpenBSD.amd64
>       Machine     : amd64
>>Description:
>       mplayer triggers pledge error in sndiod
>>How-To-Repeat:
>
>       Have sndiod running, try to watch Big Buck Bunny [1]. After a short
>       while (~30s) mplayer crashes and dmesg shows: sndiod(15460): syscall 54 
> "ioctl".
>       Mplayer is using the defaults (~/.mplayer/config is empty).
>       Watching the same video with VLC works.
>       
>       $ mplayer /home/tmy/Downloads/big_buck_bunny_10
>       MPlayer SVN-r37520 (C) 2000-2015 MPlayer Team
>
>       Playing /home/tmy/Downloads/big_buck_bunny_1080p_stereo.ogg.
>       libavformat version 56.40.101 (external)
>       libavformat file format detected.
>       [theora @ 0x1d2c9995c880]7 bits left in packet 82
>       [ogg @ 0x1d2d39a91a50]Broken file, keyframe not correctly marked.
>       [lavf] stream 0: video (theora), -vid 0
>       [lavf] stream 1: audio (vorbis), -aid 0
>       VIDEO:  [theo]  1920x1080  0bpp  24.000 fps    0.0 kbps ( 0.0 kby
>       Load subtitles in /home/tmy/Downloads/
>       =================================================================
>       Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
>       libavcodec version 56.60.100 (external)
>       [theora @ 0x1d2c9995c880]7 bits left in packet 82
>       Selected video codec: [fftheora] vfm: ffmpeg (FFmpeg Theora)
>       =================================================================
>       =================================================================
>       Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
>       AUDIO: 48000 Hz, 2 ch, floatle, 192.0 kbit/6.25% (ratio: 24000->3
>       Selected audio codec: [ffvorbis] afm: ffmpeg (FFmpeg Vorbis)
>       =================================================================
>       AO: [sndio] 48000Hz 2ch s16le (2 bytes per sample)
>       Starting playback...
>       Movie-Aspect is undefined - no prescaling applied.
>       VO: [xv] 1920x1080 => 1920x1080 Planar YV12 
>       Movie-Aspect is undefined - no prescaling applied.
>       VO: [xv] 1920x1080 => 1920x1080 Planar YV12 
>       A:   0.1 V:   0.0 A-V:  0.054 ct:  0.004   0/  0 ??% ??% ??,?% 0 
>       [VD_FFMPEG] DRI failure.
>       A:   9.9 V:   9.9 A-V:  0.014 ct:  0.043   0/  0 38%  0%  2.5% 0
>       [ASPECT] Warning: No suitable new res found!
>       [ASPECT] Warning: No suitable new res found!
>       A:  21.0 V:  21.0 A-V:  0.004 ct:  0.041   0/  0 36%  0%  2.5% 0
>       [ASPECT] Warning: No suitable new res found!
>       [ASPECT] Warning: No suitable new res found!
>       A:  22.1 V:  22.1 A-V:  0.019 ct:  0.043   0/  0 35%  0%  2.5% 0
>
>
>       MPlayer interrupted by signal 11 in module: decode video
>       - MPlayer crashed by bad usage of CPU/FPU/RAM.
>       
>       1) 
> http://download.blender.org/peach/bigbuckbunny_movies/big_buck_bunny_1080p_stereo.ogg
>>Fix:
>       Not known, use vlc to play videos as a workaround.
>
>
> dmesg:
> OpenBSD 5.9-beta (GENERIC.MP) #1781: Sat Dec 26 23:04:18 MST 2015
>     [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
> real mem = 16973611008 (16187MB)
> avail mem = 16455073792 (15692MB)
> mpath0 at root
> scsibus0 at mpath0: 256 targets
> mainbus0 at root
> bios0 at mainbus0: SMBIOS rev. 2.7 @ 0xdae9c000 (68 entries)
> bios0: vendor LENOVO version "G7ETA4WW (2.64 )" date 10/08/2015
> bios0: LENOVO 2355C16
> acpi0 at bios0: rev 2
> acpi0: sleep states S0 S3 S4 S5
> acpi0: tables DSDT FACP SLIC TCPA SSDT SSDT SSDT HPET APIC MCFG ECDT FPDT 
> ASF! UEFI UEFI POAT SSDT SSDT DMAR UEFI DBG2
> acpi0: wakeup devices LID_(S4) SLPB(S3) IGBE(S4) EXP3(S4) XHCI(S3) EHC1(S3) 
> EHC2(S3) HDEF(S4)
> acpitimer0 at acpi0: 3579545 Hz, 24 bits
> acpihpet0 at acpi0: 14318179 Hz
> acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
> cpu0 at mainbus0: apid 0 (boot processor)
> cpu0: Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz, 2594.57 MHz
> cpu0: 
> FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,NXE,LONG,LAHF,PERF,ITSC,FSGSBASE,SMEP,ERMS,SENSOR,ARAT
> cpu0: 256KB 64b/line 8-way L2 cache
> cpu0: smt 0, core 0, package 0
> mtrr: Pentium Pro MTRR support, 10 var ranges, 88 fixed ranges
> cpu0: apic clock running at 99MHz
> cpu0: mwait min=64, max=64, C-substates=0.2.1.1.2, IBE
> cpu1 at mainbus0: apid 1 (application processor)
> cpu1: Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz, 2594.11 MHz
> cpu1: 
> FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,NXE,LONG,LAHF,PERF,ITSC,FSGSBASE,SMEP,ERMS,SENSOR,ARAT
> cpu1: 256KB 64b/line 8-way L2 cache
> cpu1: smt 1, core 0, package 0
> cpu2 at mainbus0: apid 2 (application processor)
> cpu2: Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz, 2594.11 MHz
> cpu2: 
> FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,NXE,LONG,LAHF,PERF,ITSC,FSGSBASE,SMEP,ERMS,SENSOR,ARAT
> cpu2: 256KB 64b/line 8-way L2 cache
> cpu2: smt 0, core 1, package 0
> cpu3 at mainbus0: apid 3 (application processor)
> cpu3: Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz, 2594.11 MHz
> cpu3: 
> FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,NXE,LONG,LAHF,PERF,ITSC,FSGSBASE,SMEP,ERMS,SENSOR,ARAT
> cpu3: 256KB 64b/line 8-way L2 cache
> cpu3: smt 1, core 1, package 0
> ioapic0 at mainbus0: apid 2 pa 0xfec00000, version 20, 24 pins
> acpimcfg0 at acpi0 addr 0xf8000000, bus 0-63
> acpiec0 at acpi0
> acpiprt0 at acpi0: bus 0 (PCI0)
> acpiprt1 at acpi0: bus -1 (PEG_)
> acpiprt2 at acpi0: bus 2 (EXP1)
> acpiprt3 at acpi0: bus 3 (EXP2)
> acpiprt4 at acpi0: bus 4 (EXP3)
> acpiprt5 at acpi0: bus -1 (EXP5)
> acpiprt6 at acpi0: bus -1 (EXP6)
> acpiprt7 at acpi0: bus -1 (EXP7)
> acpiprt8 at acpi0: bus -1 (EXP8)
> acpicpu0 at acpi0: C2(350@80 mwait.1@0x20), C1(1000@1 mwait.1), PSS
> acpicpu1 at acpi0: C2(350@80 mwait.1@0x20), C1(1000@1 mwait.1), PSS
> acpicpu2 at acpi0: C2(350@80 mwait.1@0x20), C1(1000@1 mwait.1), PSS
> acpicpu3 at acpi0: C2(350@80 mwait.1@0x20), C1(1000@1 mwait.1), PSS
> acpipwrres0 at acpi0: PUBS, resource for XHCI, EHC1, EHC2
> acpitz0 at acpi0: critical temperature is 103 degC
> acpibtn0 at acpi0: LID_
> acpibtn1 at acpi0: SLPB
> acpibat0 at acpi0: BAT0 model "45N1143" serial   490 type LION oem "Panasonic"
> acpibat1 at acpi0: BAT1 not present
> acpiac0 at acpi0: AC unit online
> acpithinkpad0 at acpi0
> cpu0: Enhanced SpeedStep 2594 MHz: speeds: 2601, 2600, 2500, 2400, 2300, 
> 2200, 2100, 2000, 1900, 1800, 1700, 1600, 1500, 1400, 1300, 1200 MHz
> pci0 at mainbus0 bus 0
> pchb0 at pci0 dev 0 function 0 "Intel Core 3G Host" rev 0x09
> inteldrm0 at pci0 dev 2 function 0 "Intel HD Graphics 4000" rev 0x09
> drm0 at inteldrm0
> inteldrm0: msi
> inteldrm0: 1600x900
> wsdisplay0 at inteldrm0 mux 1: console (std, vt100 emulation)
> wsdisplay0: screen 1-5 added (std, vt100 emulation)
> xhci0 at pci0 dev 20 function 0 "Intel 7 Series xHCI" rev 0x04: msi
> usb0 at xhci0: USB revision 3.0
> uhub0 at usb0 "Intel xHCI root hub" rev 3.00/1.00 addr 1
> "Intel 7 Series MEI" rev 0x04 at pci0 dev 22 function 0 not configured
> em0 at pci0 dev 25 function 0 "Intel 82579LM" rev 0x04: msi, address 
> 3c:97:0e:60:8d:ca
> ehci0 at pci0 dev 26 function 0 "Intel 7 Series USB" rev 0x04: apic 2 int 16
> usb1 at ehci0: USB revision 2.0
> uhub1 at usb1 "Intel EHCI root hub" rev 2.00/1.00 addr 1
> azalia0 at pci0 dev 27 function 0 "Intel 7 Series HD Audio" rev 0x04: msi
> azalia0: codecs: Realtek ALC269, Intel/0x2806, using Realtek ALC269
> audio0 at azalia0
> ppb0 at pci0 dev 28 function 0 "Intel 7 Series PCIE" rev 0xc4: msi
> pci1 at ppb0 bus 2
> ppb1 at pci0 dev 28 function 1 "Intel 7 Series PCIE" rev 0xc4: msi
> pci2 at ppb1 bus 3
> iwn0 at pci2 dev 0 function 0 "Intel Centrino Advanced-N 6205" rev 0x34: msi, 
> MIMO 2T2R, MoW, address 60:67:20:f8:17:f4
> ppb2 at pci0 dev 28 function 2 "Intel 7 Series PCIE" rev 0xc4: msi
> pci3 at ppb2 bus 4
> sdhc0 at pci3 dev 0 function 0 "Ricoh 5U822 SD/MMC" rev 0x07: apic 2 int 18
> sdmmc0 at sdhc0
> ehci1 at pci0 dev 29 function 0 "Intel 7 Series USB" rev 0x04: apic 2 int 23
> usb2 at ehci1: USB revision 2.0
> uhub2 at usb2 "Intel EHCI root hub" rev 2.00/1.00 addr 1
> pcib0 at pci0 dev 31 function 0 "Intel QM77 LPC" rev 0x04
> ahci0 at pci0 dev 31 function 2 "Intel 7 Series AHCI" rev 0x04: msi, AHCI 1.3
> ahci0: port 0: 6.0Gb/s
> ahci0: port 1: 1.5Gb/s
> scsibus1 at ahci0: 32 targets
> sd0 at scsibus1 targ 0 lun 0: <ATA, Samsung SSD 850, EXM0> SCSI3 0/direct 
> fixed naa.50025388400c34c6
> sd0: 488386MB, 512 bytes/sector, 1000215216 sectors, thin
> cd0 at scsibus1 targ 1 lun 0: <HL-DT-ST, DVDRAM GU40N, QX23> ATAPI 5/cdrom 
> removable
> ichiic0 at pci0 dev 31 function 3 "Intel 7 Series SMBus" rev 0x04: apic 2 int 
> 18
> iic0 at ichiic0
> spdmem0 at iic0 addr 0x50: 8GB DDR3 SDRAM PC3-10600 SO-DIMM
> spdmem1 at iic0 addr 0x51: 8GB DDR3 SDRAM PC3-10600 SO-DIMM
> isa0 at pcib0
> isadma0 at isa0
> pckbc0 at isa0 port 0x60/5 irq 1 irq 12
> pckbd0 at pckbc0 (kbd slot)
> wskbd0 at pckbd0: console keyboard, using wsdisplay0
> pms0 at pckbc0 (aux slot)
> wsmouse0 at pms0 mux 0
> wsmouse1 at pms0 mux 0
> pms0: Synaptics touchpad, firmware 7.2
> pcppi0 at isa0 port 0x61
> spkr0 at pcppi0
> efifb at mainbus0 not configured
> umodem0 at uhub0 port 4 configuration 1 interface 1 "Lenovo H5321 gw" rev 
> 2.00/0.00 addr 2
> umodem0: data interface 2, has CM over data, has break
> umodem0: status change notification available
> ucom0 at umodem0
> umodem1 at uhub0 port 4 configuration 1 interface 3 "Lenovo H5321 gw" rev 
> 2.00/0.00 addr 2
> umodem1: data interface 4, has CM over data, has break
> umodem1: status change notification available
> ucom1 at umodem1
> umodem2 at uhub0 port 4 configuration 1 interface 9 "Lenovo H5321 gw" rev 
> 2.00/0.00 addr 2
> umodem2: data interface 10, has CM over data, has break
> umodem2: status change notification available
> ucom2 at umodem2
> ugen0 at uhub0 port 4 configuration 1 "Lenovo H5321 gw" rev 2.00/0.00 addr 2
> uhub3 at uhub1 port 1 "Intel Rate Matching Hub" rev 2.00/0.00 addr 2
> ugen1 at uhub3 port 1 "Lenovo Integrated Smart Card Reader" rev 2.00/1.00 
> addr 3
> ugen2 at uhub3 port 4 "Broadcom Corp BCM20702A0" rev 2.00/1.12 addr 4
> uvideo0 at uhub3 port 6 configuration 1 interface 0 "Chicony Electronics Co., 
> Ltd. Integrated Camera" rev 2.00/5.18 addr 5
> video0 at uvideo0
> uhub4 at uhub2 port 1 "Intel Rate Matching Hub" rev 2.00/0.00 addr 2
> vscsi0 at root
> scsibus2 at vscsi0: 256 targets
> softraid0 at root
> scsibus3 at softraid0: 256 targets
> sd1 at scsibus3 targ 1 lun 0: <OPENBSD, SR CRYPTO, 005> SCSI2 0/direct fixed
> sd1: 488381MB, 512 bytes/sector, 1000205348 sectors
> root on sd1a (fd61c71c70f7ca1b.a) swap on sd1b dump on sd1b
>
> usbdevs:
> Controller /dev/usb0:
> addr 1: super speed, self powered, config 1, xHCI root hub(0x0000), 
> Intel(0x8086), rev 1.00
>  port 1 disabled
>  port 2 disabled
>  port 3 disabled
>  port 4 addr 2: high speed, self powered, config 1, H5321 gw(0x1926), 
> Lenovo(0x0bdb), rev 0.00, iSerialNumber ECCBEE177DAA69E0
>  port 5 disabled
>  port 6 disabled
>  port 7 disabled
>  port 8 disabled
> Controller /dev/usb1:
> addr 1: high speed, self powered, config 1, EHCI root hub(0x0000), 
> Intel(0x8086), rev 1.00
>  port 1 addr 2: high speed, self powered, config 1, Rate Matching 
> Hub(0x0024), Intel(0x8087), rev 0.00
>   port 1 addr 3: full speed, power 100 mA, config 1, Integrated Smart Card 
> Reader(0x1003), Lenovo(0x17ef), rev 1.00
>   port 2 powered
>   port 3 powered
>   port 4 addr 4: full speed, self powered, config 1, BCM20702A0(0x21e6), 
> Broadcom Corp(0x0a5c), rev 1.12, iSerialNumber 20689D2B3B37
>   port 5 powered
>   port 6 addr 5: high speed, power 200 mA, config 1, Integrated 
> Camera(0xb2da), Chicony Electronics Co., Ltd.(0x04f2), rev 5.18
>  port 2 powered
>  port 3 powered
> Controller /dev/usb2:
> addr 1: high speed, self powered, config 1, EHCI root hub(0x0000), 
> Intel(0x8086), rev 1.00
>  port 1 addr 2: high speed, self powered, config 1, Rate Matching 
> Hub(0x0024), Intel(0x8087), rev 0.00
>   port 1 powered
>   port 2 powered
>   port 3 powered
>   port 4 powered
>   port 5 powered
>   port 6 powered
>   port 7 powered
>   port 8 powered
>  port 2 powered
>  port 3 powered

forgot to add the gdb backtrace from sndiod core:
(gdb) bt
#0  0x00001f6156c313da in ioctl () at <stdin>:2
#1  0x00001f6130dbdc3b in sio_sun_fdopen (fd=6, mode=2, nbio=1) at 
/usr/src/lib/libsndio/sio_sun.c:397
#2  0x00001f5ee2a08172 in ?? () from /usr/bin/sndiod
#3  0x00001f5ee2a0ac64 in ?? () from /usr/bin/sndiod
#4  0x00001f5ee2a042e9 in ?? () from /usr/bin/sndiod
#5  0x00001f5ee2a045f8 in ?? () from /usr/bin/sndiod
#6  0x00001f5ee2a0659b in ?? () from /usr/bin/sndiod
#7  0x00001f5ee2a0d0b1 in ?? () from /usr/bin/sndiod
#8  0x00001f5ee2a0e2c6 in ?? () from /usr/bin/sndiod
#9  0x00001f5ee2a0e998 in ?? () from /usr/bin/sndiod
#10 0x00001f5ee2a0ea60 in ?? () from /usr/bin/sndiod
#11 0x00001f5ee2a0858d in ?? () from /usr/bin/sndiod
#12 0x00001f5ee2a088da in ?? () from /usr/bin/sndiod
#13 0x00001f5ee2a0c3ac in ?? () from /usr/bin/sndiod
#14 0x00001f5ee2a03121 in ?? () from /usr/bin/sndiod
#15 0x0000000000000000 in ?? ()
(gdb) 

So the call is ioctl(fd, AUDIO_SETINFO, &aui) which seems to trigger pledge.
Which is bit odd as sndiod seems to have 3 places where it pledges syscalls. Two
of those places have 'audio' flag and I added the audio pledge to missing
one. And still the sndiod crashes on the same place.

Timo

Reply via email to