From owner-freebsd-hackers Mon Aug 21 09:55:51 1995 Return-Path: hackers-owner Received: (from majordom@localhost) by freefall.FreeBSD.org (8.6.11/8.6.6) id JAA29752 for hackers-outgoing; Mon, 21 Aug 1995 09:55:51 -0700 Received: from localhost.cdrom.com (localhost.cdrom.com [127.0.0.1]) by freefall.FreeBSD.org (8.6.11/8.6.6) with SMTP id JAA29744 ; Mon, 21 Aug 1995 09:55:48 -0700 Message-Id: <199508211655.JAA29744@freefall.FreeBSD.org> X-Authentication-Warning: freefall.FreeBSD.org: Host localhost.cdrom.com didn't use HELO protocol To: Bruce Evans cc: hackers@freefall.FreeBSD.org Subject: Re: Clock interrupts during probes? In-reply-to: Your message of "Tue, 22 Aug 95 02:45:34 +1000." <199508211645.CAA01423@godzilla.zeta.org.au> Date: Mon, 21 Aug 1995 09:55:48 -0700 From: "Justin T. Gibbs" Sender: hackers-owner@FreeBSD.org Precedence: bulk >>It would certainly make the job of having >>the SCSI code perform the proper delays between retries easier. It >>would also be the first step in getting rid of the ugly DELAY()'s in >>driver code. > >Not much easier - there would be no process context to sleep on. I >think we need something using coroutines to probe and attach all (or >large batches of) devices concurrently at boot time. Make the >coroutine switch mechanism look like tsleep() and have the same >semantics as tsleep() so that the same probe and attach code works >correctly after the system is up. DELAY(n) would become >csleep(&foo, PRIBIO, "foodelay", (n * hz) / 1000000). > >Bruce I need access to timeout(), not tsleep() for the work in the upperlevel SCSI code, so I don't need a process context. Most of the DELAY() calls in the aic7xxx driver stem from that fact that I can't use timeouts during boot and must poll in order to do a timeout. -- Justin T. Gibbs =========================================== Software Developer - Walnut Creek CDROM FreeBSD: Turning PCs into workstations ===========================================