From owner-freebsd-current Tue Nov 21 05:25:04 1995 Return-Path: owner-current Received: (from root@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id FAA19934 for current-outgoing; Tue, 21 Nov 1995 05:25:04 -0800 Received: from asstdc.scgt.oz.au (root@asstdc.scgt.oz.au [202.14.234.65]) by freefall.freebsd.org (8.6.12/8.6.6) with ESMTP id FAA19923 for ; Tue, 21 Nov 1995 05:25:00 -0800 Received: (from imb@localhost) by asstdc.scgt.oz.au (8.6.12/BSD-4.4) id AAA21883; Wed, 22 Nov 1995 00:24:49 +1100 From: michael butler Message-Id: <199511211324.AAA21883@asstdc.scgt.oz.au> Subject: Re: QIC-02 tape drive problemette To: sysseh@devetir.qld.gov.au (Stephen Hocking) Date: Wed, 22 Nov 1995 00:24:47 +1100 (EST) Cc: current@freebsd.org, sysseh@devetir.qld.gov.au In-Reply-To: <199511210924.JAA01770@netfl15a.devetir.qld.gov.au> from "Stephen Hocking" at Nov 21, 95 07:24:35 pm X-Mailer: ELM [version 2.4 PL24beta] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 914 Sender: owner-current@freebsd.org Precedence: bulk Stephen Hocking writes: > I managed to put in the patches, even though they needed a fair bit of > massaging (although mt.c did not need patching) and also persuaded the > code to do a DELAY instead of an tsleep when wtpoll was called from > wtintr. This stopped the crashes but also caused the machine to lock up > until the tape rewound. I'll look at reducing the sizes of the DELAY > parameter and see if that makes any difference. I always understood that the "poll" entry point in drivers (such as sio.c) was the recommended method for setting (or unsetting) flags to allow a tardy open/close/read/write (or any other sufficiently slow) device operation to complete. The caller waiting on the device gets put to sleep, the poll function is invoked at some convenient time (for the kernel) and, when the blocking operation does finally complete, the caller gets woken up. Am I missing something ? michael