From owner-freebsd-rc@FreeBSD.ORG Thu Feb 2 11:58:41 2006 Return-Path: X-Original-To: freebsd-rc@freebsd.org Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AFCD316A431 for ; Thu, 2 Feb 2006 11:58:41 +0000 (GMT) (envelope-from yar@comp.chem.msu.su) Received: from comp.chem.msu.su (comp.chem.msu.su [158.250.32.97]) by mx1.FreeBSD.org (Postfix) with ESMTP id E8DBA43D53 for ; Thu, 2 Feb 2006 11:58:35 +0000 (GMT) (envelope-from yar@comp.chem.msu.su) Received: from comp.chem.msu.su (localhost [127.0.0.1]) by comp.chem.msu.su (8.13.3/8.13.3) with ESMTP id k12Bw30t000213; Thu, 2 Feb 2006 14:58:03 +0300 (MSK) (envelope-from yar@comp.chem.msu.su) Received: (from yar@localhost) by comp.chem.msu.su (8.13.3/8.13.3/Submit) id k12Bw1tX000207; Thu, 2 Feb 2006 14:58:01 +0300 (MSK) (envelope-from yar) Date: Thu, 2 Feb 2006 14:58:01 +0300 From: Yar Tikhiy To: Sam Lawrance Message-ID: <20060202115800.GI29980@comp.chem.msu.su> References: <61138162-C7EB-4DC8-B106-F060D468DE70@brooknet.com.au> <200601291515.47052.flz@xbsd.org> <6BAEAA5C-A4A2-4AD9-A658-A674749B20FF@brooknet.com.au> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <6BAEAA5C-A4A2-4AD9-A658-A674749B20FF@brooknet.com.au> User-Agent: Mutt/1.5.9i Cc: freebsd-rc@freebsd.org Subject: Re: [patch] kill process after a timeout 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: Thu, 02 Feb 2006 11:58:41 -0000 On Mon, Jan 30, 2006 at 10:29:25AM +1100, Sam Lawrance wrote: > > On 30/01/2006, at 1:15 AM, Florent Thoumie wrote: > > >On Sunday 29 January 2006 14:38, Sam Lawrance wrote: > >>http://people.freebsd.org/~lawrance/patch-rc.subr > >> > >>This patch adds the ${name}_stop_timeout variable. When set, rather > >>than simply wait on the PIDS after sending a -TERM signal, they will > >>be kill -9'ed after the specified timeout in seconds. > >> > >>For example, with a tomcat script I'm working on, I set > >>jakarta_tomcat41_stop_timeout=10, then > >> > >># sh tomcat41.sh forcestop > >>Stopping jakarta_tomcat41. > >>Waiting (max 10 secs) for PIDS: 42864, 42864, 42864, 42864, 42864. > >> > >>I need to do something like this anyway with the tomcat rc scripts, I > >>figure it might be a useful addition to rc.subr. > >> > >>Thoughts? > > > >Looks good to me. But I wondered if we really have cases where we > >don't want > >to wait with some timeout. I guess I would have modified > >wait_for_pid to take > >$name_stop_timeout as a new argument (defaulting to 10, for > >example) instead > >of copying wait_for_pid to a new function. > > > >My 0.02$ :) > > We can't add a new optional argument without changing all the calls > to it anyway, because it takes a variable of PIDs as arguments: > > wait_for_pids pid [pid ...] > > I thought it was better to create a new function, just in case there > are other scripts and ports that use wait_for_pids. I wonder why we haven't begun using POSIX getopts in rc.subr functions yet. Some of them are asking for it. In this case: wait_for_pids [-t timeout] pid ... Pretty neat, huh? :-) -- Yar