From owner-freebsd-bugs@FreeBSD.ORG Wed Dec 15 15:20:20 2004 Return-Path: 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 D9C3B16A4CE for ; Wed, 15 Dec 2004 15:20:20 +0000 (GMT) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8EB7F43D4C for ; Wed, 15 Dec 2004 15:20:20 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.1/8.13.1) with ESMTP id iBFFKKDn029125 for ; Wed, 15 Dec 2004 15:20:20 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.1/8.13.1/Submit) id iBFFKKEP029124; Wed, 15 Dec 2004 15:20:20 GMT (envelope-from gnats) Resent-Date: Wed, 15 Dec 2004 15:20:20 GMT Resent-Message-Id: <200412151520.iBFFKKEP029124@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, Jose M Rodriguez Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 86ADD16A4CF for ; Wed, 15 Dec 2004 15:19:19 +0000 (GMT) Received: from smtp1.jazztel.es (smtp1.jazztel.es [62.14.3.161]) by mx1.FreeBSD.org (Postfix) with ESMTP id B013143D5C for ; Wed, 15 Dec 2004 15:19:18 +0000 (GMT) (envelope-from josemi@freebsd.jazztel.es) Received: from antivirus by smtp1.jazztel.es with antivirus id 1CeawB-0000pY-00 for FreeBSD-gnats-submit@freebsd.org Wed, 15 Dec 2004 16:19:35 +0100 Received: from [212.106.236.248] (helo=rguez.homeunix.net) by smtp1.jazztel.es with esmtp id 1Ceave-0008Qt-00 for FreeBSD-gnats-submit@freebsd.org Wed, 15 Dec 2004 16:19:02 +0100 Received: from orion.redesjm.local (localhost.redesjm.local [127.0.0.1]) by rguez.homeunix.net (8.13.1/8.13.1) with ESMTP id iBFFIdZP090972 for ; Wed, 15 Dec 2004 16:18:40 +0100 (CET) (envelope-from freebsd@orion.redesjm.local) Received: (from freebsd@localhost) by orion.redesjm.local (8.13.1/8.13.1/Submit) id iBFFIdrF090971; Wed, 15 Dec 2004 16:18:39 +0100 (CET) (envelope-from freebsd) Message-Id: <200412151518.iBFFIdrF090971@orion.redesjm.local> Date: Wed, 15 Dec 2004 16:18:39 +0100 (CET) From: Jose M Rodriguez To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Subject: conf/75118: add modules support to /etc/rc.d/mixer X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Jose M Rodriguez List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Dec 2004 15:20:21 -0000 >Number: 75118 >Category: conf >Synopsis: add modules support to /etc/rc.d/mixer >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 Dec 15 15:20:20 GMT 2004 >Closed-Date: >Last-Modified: >Originator: Jose M Rodriguez >Release: FreeBSD 5.3-STABLE i386 >Organization: Redes JM >Environment: System: FreeBSD orion.redesjm.local 5.3-STABLE FreeBSD 5.3-STABLE #0: Wed Dec 15 00:35:47 CET 2004 root@orion.redesjm.local:/usr/obj/usr/src/sys/ORION i386 >Description: Add modules support to /etc/rc.d/mixer use ${mixer_modules} (defined via /etc/rc.conf) a a blank separated list of loaded modules prior to mixer config reload Also make sound configuration by sysinstall possible via snd_* modules (but not implemented jet). >How-To-Repeat: >Fix: --- patch-mixer_modules begins here --- --- /usr/src/etc/rc.d/mixer Sun Oct 10 11:50:53 2004 +++ etc/rc.d/mixer Thu Dec 9 23:25:41 2004 @@ -40,6 +40,22 @@ extra_commands="reload" # +# Install needed modules +# +install_mixer_modules() +{ + local mixer_module + + if [ -n "${mixer_modules}" ]; then + for mixer_module in "${mixer_modules}"; do + if ! /sbin/kldstat -n ${mixer_module} > /dev/null 2>&1 ; then + /sbin/kldload ${mixer_module} + fi + done + fi +} + +# # List current mixer devices to stdout. # list_mixers() @@ -81,6 +97,7 @@ { local mixer + install_mixer_modules for mixer in `list_mixers`; do mixer_restore ${mixer} done --- patch-mixer_modules ends here --- >Release-Note: >Audit-Trail: >Unformatted: