From owner-svn-src-stable@FreeBSD.ORG Tue Jan 25 23:25:23 2011 Return-Path: Delivered-To: svn-src-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8C09A106564A; Tue, 25 Jan 2011 23:25:23 +0000 (UTC) (envelope-from scf@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 6063D8FC14; Tue, 25 Jan 2011 23:25:23 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id p0PNPNm7056231; Tue, 25 Jan 2011 23:25:23 GMT (envelope-from scf@svn.freebsd.org) Received: (from scf@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id p0PNPNrg056228; Tue, 25 Jan 2011 23:25:23 GMT (envelope-from scf@svn.freebsd.org) Message-Id: <201101252325.p0PNPNrg056228@svn.freebsd.org> From: Sean Farley Date: Tue, 25 Jan 2011 23:25:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r217867 - stable/8/sys/compat/linux X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 Jan 2011 23:25:23 -0000 Author: scf Date: Tue Jan 25 23:25:23 2011 New Revision: 217867 URL: http://svn.freebsd.org/changeset/base/217867 Log: Merge from head to stable/8: r216813: 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. Reviewed by: gavin Modified: stable/8/sys/compat/linux/linux_ioctl.c stable/8/sys/compat/linux/linux_ioctl.h Directory Properties: stable/8/sys/ (props changed) stable/8/sys/amd64/include/xen/ (props changed) stable/8/sys/cddl/contrib/opensolaris/ (props changed) stable/8/sys/contrib/dev/acpica/ (props changed) stable/8/sys/contrib/pf/ (props changed) Modified: stable/8/sys/compat/linux/linux_ioctl.c ============================================================================== --- stable/8/sys/compat/linux/linux_ioctl.c Tue Jan 25 23:23:45 2011 (r217866) +++ stable/8/sys/compat/linux/linux_ioctl.c Tue Jan 25 23:25:23 2011 (r217867) @@ -1743,7 +1743,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; @@ -1751,7 +1751,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); @@ -1768,6 +1768,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: stable/8/sys/compat/linux/linux_ioctl.h ============================================================================== --- stable/8/sys/compat/linux/linux_ioctl.h Tue Jan 25 23:23:45 2011 (r217866) +++ stable/8/sys/compat/linux/linux_ioctl.h Tue Jan 25 23:25:23 2011 (r217867) @@ -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