From owner-svn-src-head@FreeBSD.ORG Sun Mar 7 04:26:22 2010 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2AEA71065670; Sun, 7 Mar 2010 04:26:22 +0000 (UTC) (envelope-from dougb@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 1A3B88FC0C; Sun, 7 Mar 2010 04:26:22 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id o274QL3q035948; Sun, 7 Mar 2010 04:26:22 GMT (envelope-from dougb@svn.freebsd.org) Received: (from dougb@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o274QL7k035946; Sun, 7 Mar 2010 04:26:21 GMT (envelope-from dougb@svn.freebsd.org) Message-Id: <201003070426.o274QL7k035946@svn.freebsd.org> From: Doug Barton Date: Sun, 7 Mar 2010 04:26:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r204818 - head/etc/rc.d X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Mar 2010 04:26:22 -0000 Author: dougb Date: Sun Mar 7 04:26:21 2010 New Revision: 204818 URL: http://svn.freebsd.org/changeset/base/204818 Log: Implement the idea of parallel-only-at-start-time in a cleaner, more rc.d'ish way. Not objected to by: netchild Modified: head/etc/rc.d/jail Modified: head/etc/rc.d/jail ============================================================================== --- head/etc/rc.d/jail Sun Mar 7 02:04:59 2010 (r204817) +++ head/etc/rc.d/jail Sun Mar 7 04:26:21 2010 (r204818) @@ -18,6 +18,8 @@ name="jail" rcvar=`set_rcvar` + +start_precmd="jail_prestart" start_cmd="jail_start" stop_cmd="jail_stop" @@ -545,6 +547,13 @@ jail_ips() done } +jail_prestart() +{ + if checkyesno jail_parallel_start; then + command_args='&' + fi +} + jail_start() { echo -n 'Configuring jails:' @@ -730,18 +739,4 @@ if [ -n "$*" ]; then jail_list="$*" fi -# Only allow the parallel start of jails, other commands are not -# safe to execute in parallel. -case "${cmd}" in -*start) - ;; -*) - jail_parallel_start=NO -esac - -if checkyesno jail_parallel_start; then - run_rc_command "${cmd}" & -else - run_rc_command "${cmd}" -fi - +run_rc_command "${cmd}"