From owner-freebsd-arch@FreeBSD.ORG Mon Oct 8 23:04:05 2007 Return-Path: Delivered-To: arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7DB2516A418; Mon, 8 Oct 2007 23:04:05 +0000 (UTC) (envelope-from jroberson@chesapeake.net) Received: from webaccess-cl.virtdom.com (webaccess-cl.virtdom.com [216.240.101.25]) by mx1.freebsd.org (Postfix) with ESMTP id 4A1B513C481; Mon, 8 Oct 2007 23:04:05 +0000 (UTC) (envelope-from jroberson@chesapeake.net) Received: from [192.168.1.103] (c-67-160-44-208.hsd1.wa.comcast.net [67.160.44.208]) (authenticated bits=0) by webaccess-cl.virtdom.com (8.13.6/8.13.6) with ESMTP id l98N42ww026437 (version=TLSv1/SSLv3 cipher=DHE-DSS-AES256-SHA bits=256 verify=NO); Mon, 8 Oct 2007 19:04:03 -0400 (EDT) (envelope-from jroberson@chesapeake.net) Date: Mon, 8 Oct 2007 16:06:40 -0700 (PDT) From: Jeff Roberson X-X-Sender: jroberson@10.0.0.1 To: Alfred Perlstein In-Reply-To: <20071008215011.GI31826@elvis.mu.org> Message-ID: <20071008160422.K912@10.0.0.1> References: <20071008142928.Y912@10.0.0.1> <20071008215011.GI31826@elvis.mu.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: arch@freebsd.org Subject: Re: Abolishing sleeps in issignal() X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Oct 2007 23:04:05 -0000 On Mon, 8 Oct 2007, Alfred Perlstein wrote: > * Jeff Roberson [071008 14:39] wrote: >> >> What I'd like from readers on arch@ is for you to consider if there are >> other cases than non-restartable syscalls that will break if >> msleep/sleepqs return EINTR from SIGSTOP and debug events. Also, is there >> an authoritative list of non-restartable syscalls anywhere? It's just >> those involving timevals right? nanosleep/poll/select/kqueue.. others? >> >> I intend to do this work for 8.0 and hopefully very early on so we have >> plenty of time to shake out bugs as this signal code tends to be very >> delicate. >> > > Is there precident for this work from other OSes, Linux, Solaris > that shows moving to this model works? I forgot to mention that. These two both use this model. Linux sets up a complicated syscall restart state so that the normal syscal restart mechanism can be used. I didn't fully understand what solaris does but they don't sleep in issignal. They do it later as well. Jeff. > > -- > - Alfred Perlstein >