From owner-freebsd-current@FreeBSD.ORG Thu Mar 2 18:35:52 2006 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0488E16A420 for ; Thu, 2 Mar 2006 18:35:52 +0000 (GMT) (envelope-from brdavis@odin.ac.hmc.edu) Received: from odin.ac.hmc.edu (Odin.AC.HMC.Edu [134.173.32.75]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7D2BE43D49 for ; Thu, 2 Mar 2006 18:35:51 +0000 (GMT) (envelope-from brdavis@odin.ac.hmc.edu) Received: from odin.ac.hmc.edu (localhost.localdomain [127.0.0.1]) by odin.ac.hmc.edu (8.13.0/8.13.0) with ESMTP id k22IZpB7007036; Thu, 2 Mar 2006 10:35:51 -0800 Received: (from brdavis@localhost) by odin.ac.hmc.edu (8.13.0/8.13.0/Submit) id k22IZpwO007035; Thu, 2 Mar 2006 10:35:51 -0800 Date: Thu, 2 Mar 2006 10:35:51 -0800 From: Brooks Davis To: Maksim Yevmenkin Message-ID: <20060302183551.GD12226@odin.ac.hmc.edu> References: <44062DE7.8090508@savvis.net> <20060302180612.GB12226@odin.ac.hmc.edu> <44073955.6050202@savvis.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <44073955.6050202@savvis.net> User-Agent: Mutt/1.4.1i X-Virus-Scanned: by amavisd-new X-Spam-Status: No, hits=0.0 required=8.0 tests=none autolearn=no version=2.63 X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on odin.ac.hmc.edu Cc: freebsd-current@freebsd.org Subject: Re: [PATCH] kbdmux(4) and devd(8) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 02 Mar 2006 18:35:52 -0000 On Thu, Mar 02, 2006 at 10:28:37AM -0800, Maksim Yevmenkin wrote: > Brooks Davis wrote: > >On Wed, Mar 01, 2006 at 03:27:35PM -0800, Maksim Yevmenkin wrote: > > > >>Dear Hackers, > >> > >>any comments/objections/etc. to the following devd.conf patch? the idea > >>is to prevent devd(8) from trying to switch keyboards when kbdmux(4) is > >>the default keyboard. > >> > >>the 'attach' action will fail anyway, however, the 'detach' action may > >>succeed (if /dev/kbd0 is not is the kbdmux(4)). > > > > > >This seems OK if a bit ugly to me. Another idea might be to add some > >new methods to /etc/rc.d/syscons (or create a new keyboard management > >script) to hide the logic there. > > do you mean something like Yes, that's what I was thinking. -- Brooks > --- syscons.orig Thu Jan 5 15:36:02 2006 > +++ syscons Thu Mar 2 10:25:49 2006 > @@ -34,8 +34,10 @@ > . /etc/rc.subr > > name="syscons" > +extra_commands="setkeyboard" > start_precmd="syscons_precmd" > start_cmd="syscons_start" > +setkeyboard_cmd="syscons_setkeyboard" > > # stdin must be redirected because it might be for a serial console > # > @@ -206,5 +208,19 @@ > echo '.' > } > > +syscons_setkeyboard() > +{ > + kbd=$1 > + > + if [ -z "${kbd}" ]; then > + return 1 > + fi > + > + kbdcontrol -i < ${kbddev} | grep kbdmux > /dev/null 2>&1 > + if [ $? != 0 ]; then > + kbdcontrol -k /dev/${kbd} < ${kbddev} > /dev/null 2>&1 > + fi > +} > + > load_rc_config $name > -run_rc_command "$1" > +run_rc_command $* > > > thanks, > max