Subject: port-i386/7759: BSD/OS binaries fail for audio
To: None <gnats-bugs@gnats.netbsd.org>
From: Hubert Feyrer <feyrer@rfhs8012.fh-regensburg.de>
List: netbsd-bugs
Date: 06/11/1999 05:50:51
>Number:         7759
>Category:       port-i386
>Synopsis:       BSD/OS binaries fail for audio
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    port-i386-maintainer (NetBSD/i386 Portmaster)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Jun 11 05:50:00 1999
>Last-Modified:
>Originator:     Hubert Feyrer
>Organization:
Hubert Feyrer <hubertf@channel.regensburg.org>
>Release:        1.4
>Environment:
	
System: NetBSD yui 1.4 NetBSD 1.4 (YUI) #23: Wed Jun 9 03:07:36 MEST 1999 feyrer@yui:/disk1/cvs/src-1.4/sys/arch/i386/compile/YUI i386


>Description:
	mtv (from ftp://ftp.mpegtv.com/pub/mpeg/mpegtv/player/x86-bsdi-bsdos/mtv-1.0.6.0.tgz)
	has problems with the audio interface on NetBSD 1.4 (i386):

There's a popup window that says:
	Warning!
	Audio device busy or sampl. rate unsup. (muting)
	Invalid Argument


yui% file /tmp/mtv/mtv
/tmp/mtv/mtv: 386 compact demand paged pure executable
yui% file /tmp/mtv/mtvp
/tmp/mtv/mtvp: 386 compact demand paged pure executable not stripped

ktrace says:

...
 17810 mtvp     CALL  open(0x13780,0,0xfb000)
 17810 mtvp     NAMI  "/dev/mixer"
 17809 mtvp     CALL  break(0xfbffc)
 17809 mtvp     RET   break 0 
 17809 mtvp     CALL  break(0xfcffc)
 17809 mtvp     RET   break 0 
 17809 mtvp     CALL  break(0xfdffc)
 17809 mtvp     RET   break 0
 17809 mtvp     CALL  break(0xfeffc)
 17809 mtvp     RET   break 0 
 17809 mtvp     CALL  break(0xffffc)
 17809 mtvp     RET   break 0 
 17809 mtvp     CALL  break(0x100ffc)
 17809 mtvp     RET   break 0
 17810 mtvp     RET   open 4
 17810 mtvp     CALL  ioctl(0x4,_IOR('M',0,0x4),0xefbb7330)
 17810 mtvp     RET   ioctl -1 errno 22 Invalid argument
 17810 mtvp     CALL  write(0x5,0xefbb9370,0x8)
 17810 mtvp     GIO   fd 5 wrote 8 bytes
 17810 mtvp     RET   write 8 
 17810 mtvp     CALL  ioctl(0x4,_IOR('M',0x4,0x4),0xefbb6304)
 17810 mtvp     RET   ioctl -1 errno 22 Invalid argument
 17810 mtvp     CALL  ioctl(0x4,_IOR('M',0x4,0x4),0xefbb6304)
 17810 mtvp     RET   ioctl -1 errno 22 Invalid argument
...
 17810 mtvp     CALL  ioctl(0x4,_IOR('M',0x4,0x4),0xefbb22a8)
 17810 mtvp     RET   ioctl -1 errno 22 Invalid argument
 17810 mtvp     CALL  ioctl(0x4,_IOR('M',0x4,0x4),0xefbb22a8)
 17810 mtvp     RET   ioctl -1 errno 22 Invalid argument
...
 17810 mtvp     CALL  ioctl(0x4,_IOR('M',0x4,0x4),0xefbb22a8)
 17810 mtvp     RET   ioctl -1 errno 22 Invalid argument
 17810 mtvp     CALL  ioctl(0x4,_IOR('M',0x4,0x4),0xefbb22a8)
 17810 mtvp     RET   ioctl -1 errno 22 Invalid argument
...
 17810 mtvp     CALL  ioctl(0x4,_IOR('M',0x4,0x4),0xefbb22a8)
 17810 mtvp     RET   ioctl -1 errno 22 Invalid argument
 17810 mtvp     CALL  ioctl(0x4,_IOR('M',0x4,0x4),0xefbb22a8)
 17810 mtvp     RET   ioctl -1 errno 22 Invalid argument
...
 17810 mtvp     CALL  ioctl(0x4,_IOR('M',0x4,0x4),0xefbb6300)
 17810 mtvp     RET   ioctl -1 errno 22 Invalid argument
 17810 mtvp     CALL  ioctl(0x4,_IOR('M',0x4,0x4),0xefbb6300)
 17810 mtvp     RET   ioctl -1 errno 22 Invalid argument
...



>How-To-Repeat:
	run mtv (see URL above) on a 1.4/i386 box, see the above in ktrace.

>Fix:
	no idea. 
>Audit-Trail:
>Unformatted: