From owner-freebsd-current@FreeBSD.ORG Tue May 23 19:48:59 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 AE69416A423; Tue, 23 May 2006 19:48:59 +0000 (UTC) (envelope-from scottl@samsco.org) Received: from pooker.samsco.org (pooker.samsco.org [168.103.85.57]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3A67543D4C; Tue, 23 May 2006 19:48:58 +0000 (GMT) (envelope-from scottl@samsco.org) Received: from [10.10.3.185] ([69.15.205.254]) (authenticated bits=0) by pooker.samsco.org (8.13.4/8.13.4) with ESMTP id k4NJlYxo010572; Tue, 23 May 2006 13:47:39 -0600 (MDT) (envelope-from scottl@samsco.org) Message-ID: <447366CD.7010301@samsco.org> Date: Tue, 23 May 2006 13:47:25 -0600 From: Scott Long User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.12) Gecko/20060206 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Warner Losh References: <4473336F.1030900@samsco.org> <20060523.112205.115998971.imp@bsdimp.com> <44735620.9080403@samsco.org> <20060523.132355.21838169.imp@bsdimp.com> In-Reply-To: <20060523.132355.21838169.imp@bsdimp.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=0.0 required=3.8 tests=none autolearn=failed version=3.1.1 X-Spam-Checker-Version: SpamAssassin 3.1.1 (2006-03-10) on pooker.samsco.org Cc: freebsd-multimedia@freebsd.org, des@des.no, freebsd-current@freebsd.org, Alexander@Leidinger.net Subject: Re: Call for testing: emu10kx driver for Creative sound cards 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: Tue, 23 May 2006 19:49:09 -0000 Warner Losh wrote: > From: Scott Long > Subject: Re: Call for testing: emu10kx driver for Creative sound cards > Date: Tue, 23 May 2006 12:36:16 -0600 > > >>Warner Losh wrote: >> >>>From: Scott Long >>>Subject: Re: Call for testing: emu10kx driver for Creative sound cards >>>Date: Tue, 23 May 2006 10:08:15 -0600 >>> >>> >>> >>>>Dag-Erling Smørgrav wrote: >>>> >>>> >>>>>Alexander Leidinger writes: >>>>> >>>>> >>>>> >>>>>>Quoting des@des.no (Dag-Erling Smørgrav) (Tue, 23 May 2006 14:26:58 +0200): >>>>>> >>>>>> >>>>>> >>>>>>>Yuriy Tsibizov writes: >>>>>>> >>>>>>> >>>>>>> >>>>>>>>2. Complete mixer support. Some controls that can't fit into OSS >>>>>>>>mixer are available as sysctl under debug.emu10kxX. >>>>>>> >>>>>>>That is not the correct place for it. Please use the device's sysctl >>>>>>>context (obtained with device_get_sysctl_ctx()) >>>>>> >>>>>>This was based upon a suggestion by me. We want to get rid of most >>>>>>sound related syscalls (at least those which belong into the realm of >>>>>>the user, and not into the realm of the administrator). Until we have >>>>>>an application and an interface, we have to life with the sysctls, but >>>>>>to let the users know that this is not an interface but a temporary >>>>>>workaround, it's put into the debug MIB. I hope we will not ship >>>>>>7.0-RELEASE with any such sysctl (any help appreciated). >>>>> >>>>> >>>>>Regardless, device-specific sysctl knobs belong in the individual >>>>>device's sysctl context, which automatically places them in the >>>>>correct location in the dev tree and automatically destroys them when >>>>>the device is destroyed. Please do not create further precedent for >>>>>breaking this rule, no matter how good your intentions. >>>>> >>>>>DES >>>> >>>>The problem is that Alexander wants these sysctls to only be temporary. >>>>Recall that big thread from a month or two ago about treating sysctls >>>>as an API, and how there was heavy disagreement over how to define >>>>"stable" sysctls that apps could depend on? If a temporary set of >>>>sysctls get put under the dev tree, then it risks becoming permanent, >>>>which is not what Alexander wants. So, either we need to decide what >>>>parts of the sysctl to define as stable, like I asked for in the >>>>previous thread, or we need to pretend that it's not a problem that we >>>>should address, and let you and Alexander continue to argue over the >>>>'correct place'. >>> >>> >>>Then put them under the right place, but create a subtree that's "tmp" >>> >>>In general, drivers should avoid using the debug.* space. >>> >>>Warner >> >>But that's the problem. You just announced a rule that is in conflict >>with rules that others have announced. All I asked for was for the >>rules to be decided on and published, and I got pushback from people >>who said either that all sysctls are part of the API, or that no rules >>should exist and that everyone should just use careful judgement, so >>long as their judgement is correct. Both of these stances are absurd. > > > Drivers have no business using debug.* anymore. They should migrate > to the new interface that has already been in use, like DES said. > Putting them in debug* doesn't make them any more or less permanant. > The driver should document what is published and isn't published > (approved, etc) in its man page. In this case, adding a list of the > 'blessed' sysctls to the appropriate man page with a warning that says > that all others are for the convenience of the driver writer and may > disapper would solve the problem. Putting them under 'temp' or 'tmp' > would also be a strong hint, but isn't completely necessary. > > Warner That's fine (and I do agree with the content of you are saying), but that doesn't de-conflict the opposite advice that others have been giving. I'd really like to see namespaces and name prefixes defined that have stable/unstable meaning. I dropped this due to the very vocal opposition at the time. Scott