From owner-freebsd-bugs@FreeBSD.ORG Wed Aug 2 15:50:25 2006 Return-Path: X-Original-To: freebsd-bugs@hub.freebsd.org Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3249516A4F8 for ; Wed, 2 Aug 2006 15:50:25 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7507B43D77 for ; Wed, 2 Aug 2006 15:50:14 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id k72FoDlO066449 for ; Wed, 2 Aug 2006 15:50:13 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id k72FoD37066448; Wed, 2 Aug 2006 15:50:13 GMT (envelope-from gnats) Resent-Date: Wed, 2 Aug 2006 15:50:13 GMT Resent-Message-Id: <200608021550.k72FoD37066448@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Eugene Grosbein Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6DD7E16A4DF for ; Wed, 2 Aug 2006 15:44:10 +0000 (UTC) (envelope-from eugen@grosbein.pp.ru) Received: from grosbein.pp.ru (grgw.svzserv.kemerovo.su [213.184.64.166]) by mx1.FreeBSD.org (Postfix) with ESMTP id 40CBC43D49 for ; Wed, 2 Aug 2006 15:44:06 +0000 (GMT) (envelope-from eugen@grosbein.pp.ru) Received: from grosbein.pp.ru (localhost [127.0.0.1]) by grosbein.pp.ru (8.13.6/8.13.6) with ESMTP id k72FhwFJ002403 for ; Wed, 2 Aug 2006 23:44:00 +0800 (KRAST) (envelope-from eugen@grosbein.pp.ru) Received: (from eugen@localhost) by grosbein.pp.ru (8.13.6/8.13.6/Submit) id k72FhvSJ002402; Wed, 2 Aug 2006 23:43:57 +0800 (KRAST) (envelope-from eugen) Message-Id: <200608021543.k72FhvSJ002402@grosbein.pp.ru> Date: Wed, 2 Aug 2006 23:43:57 +0800 (KRAST) From: Eugene Grosbein To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Subject: misc/101268: [patch] /etc/rc.d/mixer should obey mixer_enable rc.conf(5) variable X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Aug 2006 15:50:25 -0000 >Number: 101268 >Category: misc >Synopsis: [patch] /etc/rc.d/mixer should obey mixer_enable rc.conf(5) variable >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Wed Aug 02 15:50:13 GMT 2006 >Closed-Date: >Last-Modified: >Originator: Eugene Grosbein >Release: FreeBSD 6.1-STABLE i386 >Organization: Svyaz Service JSC >Environment: System: FreeBSD grosbein.pp.ru 6.1-STABLE FreeBSD 6.1-STABLE #5: Tue Jul 25 20:15:31 KRAST 2006 eu@grosbein.pp.ru:/mnt/tmp/obj/usr/local/src/sys/DADV i386 i975XBX motherboard with onboard Intel HDA (azalia) >Description: There is no way to prevent /etc/rc.d/mixer from working when it sees /dev/mixer* device nodes. However, there may be reasons to disable it. For example, i975XBX onboard audio is currently not supported by sound(4) audio device infrastructure. One can use OSS drivers to make it work but /usr/sbin/mixer used by /etc/rc.d/mixer cannot work with OSS's /dev/mixer* nodes. Hence, /etc/rc.d/mixer issues lots of errors while running and should be disabled. >How-To-Repeat: Boot FreeBSD 6.1 using i975XBX motherboard, install and activate OSS driver for onboard audio. /etc/rc.d/mixer will see /dev/mixer* devices at shutdown time and will try to work with them (hopelessly). The following patch introduces the "mixer_enable" rc.conf(5) variable that defaults to the value "YES". One may use mixer_enable="NO" to disable stock mixer management and use compatible version, if any. >Fix: --- src/etc/rc.d/mixer.orig Fri Feb 17 19:30:14 2006 +++ src/etc/rc.d/mixer Wed Aug 2 23:27:23 2006 @@ -38,6 +38,7 @@ start_cmd="mixer_start" reload_cmd="mixer_start" extra_commands="reload" +: ${mixer_enable:=YES} # # List current mixer devices to stdout. @@ -81,6 +82,7 @@ { local mixer + checkyesno mixer_enable || return for mixer in `list_mixers`; do mixer_restore ${mixer} done @@ -93,6 +95,7 @@ { local mixer + checkyesno mixer_enable || return for mixer in `list_mixers`; do mixer_save ${mixer} done >Release-Note: >Audit-Trail: >Unformatted: