From owner-svn-src-all@FreeBSD.ORG Sun Jan 2 00:04:02 2011 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 1233) id CAF591065670; Sun, 2 Jan 2011 00:04:02 +0000 (UTC) Date: Sun, 2 Jan 2011 00:04:02 +0000 From: Alexander Best To: Sean Farley Message-ID: <20110102000402.GA65041@freebsd.org> References: <201012300218.oBU2I4BF020068@svn.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201012300218.oBU2I4BF020068@svn.freebsd.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r216813 - head/sys/compat/linux X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Jan 2011 00:04:02 -0000 On Thu Dec 30 10, Sean Farley wrote: > Author: scf > Date: Thu Dec 30 02:18:04 2010 > New Revision: 216813 > URL: http://svn.freebsd.org/changeset/base/216813 > > Log: > Fix the LINUX_SOUND_MIXER_INFO ioctl to return success after the > information is set to FreeBSD. It had been falling through to the end > of linux_ioctl_sound() and returning ENOIOCTL. Noticed when running the > Linux ALSA amixer tool. > > Add a LINUX_SOUND_MIXER_READ_CAPS ioctl which is used by the Skype > v2.1.0.81 binary. i'm running r216877 and still skype won't detect my audio devices (i.e. it reports "Problem With Audio Playback"). this is with the static skype binary package. cheers. alex > > Reviewed by: gavin > MFC after: 2 weeks > > Modified: > head/sys/compat/linux/linux_ioctl.c > head/sys/compat/linux/linux_ioctl.h > > Modified: head/sys/compat/linux/linux_ioctl.c > ============================================================================== > --- head/sys/compat/linux/linux_ioctl.c Thu Dec 30 01:28:56 2010 (r216812) > +++ head/sys/compat/linux/linux_ioctl.c Thu Dec 30 02:18:04 2010 (r216813) > @@ -1749,7 +1749,7 @@ linux_ioctl_sound(struct thread *td, str > strncpy(info.id, "OSS", sizeof(info.id) - 1); > strncpy(info.name, "FreeBSD OSS Mixer", sizeof(info.name) - 1); > copyout(&info, (void *)args->arg, sizeof(info)); > - break; > + return (0); > } > case 0x0030: { /* SOUND_OLD_MIXER_INFO */ > struct linux_old_mixer_info info; > @@ -1757,7 +1757,7 @@ linux_ioctl_sound(struct thread *td, str > strncpy(info.id, "OSS", sizeof(info.id) - 1); > strncpy(info.name, "FreeBSD OSS Mixer", sizeof(info.name) - 1); > copyout(&info, (void *)args->arg, sizeof(info)); > - break; > + return (0); > } > default: > return (ENOIOCTL); > @@ -1774,6 +1774,10 @@ linux_ioctl_sound(struct thread *td, str > args->cmd = SOUND_MIXER_READ_STEREODEVS; > return (ioctl(td, (struct ioctl_args *)args)); > > + case LINUX_SOUND_MIXER_READ_CAPS: > + args->cmd = SOUND_MIXER_READ_CAPS; > + return (ioctl(td, (struct ioctl_args *)args)); > + > case LINUX_SOUND_MIXER_READ_RECMASK: > args->cmd = SOUND_MIXER_READ_RECMASK; > return (ioctl(td, (struct ioctl_args *)args)); > > Modified: head/sys/compat/linux/linux_ioctl.h > ============================================================================== > --- head/sys/compat/linux/linux_ioctl.h Thu Dec 30 01:28:56 2010 (r216812) > +++ head/sys/compat/linux/linux_ioctl.h Thu Dec 30 02:18:04 2010 (r216813) > @@ -267,6 +267,7 @@ > #define LINUX_SOUND_MIXER_INFO 0x4d65 > #define LINUX_OSS_GETVERSION 0x4d76 > #define LINUX_SOUND_MIXER_READ_STEREODEVS 0x4dfb > +#define LINUX_SOUND_MIXER_READ_CAPS 0x4dfc > #define LINUX_SOUND_MIXER_READ_RECMASK 0x4dfd > #define LINUX_SOUND_MIXER_READ_DEVMASK 0x4dfe > #define LINUX_SOUND_MIXER_WRITE_RECSRC 0x4dff -- a13x