From owner-freebsd-rc@FreeBSD.ORG Fri Jan 6 15:26:40 2012 Return-Path: Delivered-To: freebsd-rc@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1EE0C106566B for ; Fri, 6 Jan 2012 15:26:40 +0000 (UTC) (envelope-from pawel@dawidek.net) Received: from mail.dawidek.net (60.wheelsystems.com [83.12.187.60]) by mx1.freebsd.org (Postfix) with ESMTP id C25C68FC0A for ; Fri, 6 Jan 2012 15:26:39 +0000 (UTC) Received: from localhost (89-73-195-149.dynamic.chello.pl [89.73.195.149]) by mail.dawidek.net (Postfix) with ESMTPSA id 16406500; Fri, 6 Jan 2012 16:26:38 +0100 (CET) Date: Fri, 6 Jan 2012 16:25:29 +0100 From: Pawel Jakub Dawidek To: Jilles Tjoelker Message-ID: <20120106152529.GF1693@garage.freebsd.pl> References: <20120106141301.GE1693@garage.freebsd.pl> <20120106151740.GA75037@stack.nl> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="3607uds81ZQvwCD0" Content-Disposition: inline In-Reply-To: <20120106151740.GA75037@stack.nl> X-OS: FreeBSD 9.0-CURRENT amd64 User-Agent: Mutt/1.5.21 (2010-09-15) Cc: freebsd-rc@FreeBSD.org Subject: Re: Making use of set_rcvar. X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Discussion related to /etc/rc.d design and implementation." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 06 Jan 2012 15:26:40 -0000 --3607uds81ZQvwCD0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Jan 06, 2012 at 04:17:40PM +0100, Jilles Tjoelker wrote: > On Fri, Jan 06, 2012 at 03:13:03PM +0100, Pawel Jakub Dawidek wrote: > > Any objections? >=20 > > http://people.freebsd.org/~pjd/patches/set_rcvar.patch >=20 > > This patch only changes scripts where set_rcvar can be used with no > > arguments. >=20 > While this makes the scripts cleaner, it will lead to extra forks with > the current implementation of sh which will slow down boot to some > extent. The effect is small on x86 but may be large on embedded > platforms. That was my concern as well, but I was under impression that using set_rcvar is preferred. I'm fine either way, but would like it to be consistent across system startup scripts. I like using set_rcvar as it eliminates typing name in one more place. Very handy when you create your own script by changing existing one. > If I could change history, I would have forbidden calling a function > from a command substitution like that in the template. Instead, the > function should be called normally and should set the variable itself. > However, I think that cannot be changed anymore. >=20 > I have a fairly small patch to sh to eliminate the fork when expanding > $(set_rcvar). However, one could object that this does not add true new > capabilities but only a new notation to the part of the language that > executes without forks (because the function could write into a variable > instead of being command-substituted). Wouldn't it be helpful to define name before loading rc.subr? This would make the scripts less pretty, though. --=20 Pawel Jakub Dawidek http://www.wheelsystems.com FreeBSD committer http://www.FreeBSD.org Am I Evil? Yes, I Am! http://yomoli.com --3607uds81ZQvwCD0 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.14 (FreeBSD) iEYEARECAAYFAk8HEmQACgkQForvXbEpPzSibQCglOnSuF52h1R17bzWDMSLN+sC igMAoMaCxMxjb27qH1TROvviCqC5PNFo =4iZc -----END PGP SIGNATURE----- --3607uds81ZQvwCD0--