From owner-freebsd-current Thu Jun 4 08:18:26 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id IAA24484 for freebsd-current-outgoing; Thu, 4 Jun 1998 08:18:26 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from sendero.simon-shapiro.org (sendero.simon-shapiro.org.142.69.207.in-addr.arpa [207.69.142.25] (may be forged)) by hub.freebsd.org (8.8.8/8.8.8) with SMTP id IAA24351 for ; Thu, 4 Jun 1998 08:18:05 -0700 (PDT) (envelope-from shimon@sendero.simon-shapiro.org) Received: (qmail 11955 invoked by uid 1000); 4 Jun 1998 16:19:44 -0000 Message-ID: X-Mailer: XFMail 1.3 [p0] on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: <199806032330.QAA02030@dingo.cdrom.com> Date: Thu, 04 Jun 1998 12:19:44 -0400 (EDT) Reply-To: shimon@simon-shapiro.org Organization: The Simon Shapiro Foundation From: Simon Shapiro To: Mike Smith Subject: Re: DPT driver fails and panics with Degraded Array Cc: Michael Hancock , "freebsd-current@freebsd.org" , tcobb , Karl Pielorz , Bob Willcox , Greg Lehey Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On 03-Jun-98 Mike Smith wrote: ... >> This would normally cause a 'biodone: buffer already done' message, >> which is a warning, not a panic. The only way I could think of this >> happening on a valid buffer (apart from the obvious of calling it >> while it wasn't busy) would be if something messed around with other >> buffer flags. > > It would be an issue if the buf struct had been recycled, but hadn't > yet been marked busy, or if the buf pointer was invalid (the business > check is the very first check in biodone()). Is this code surrounded by splhigh() ? If not, it is entirely possible for that to happen. Due to the caching/quieing nature of the DPT, especially the PM3334, and the multi-threaded nature of the DPT driver, for several interrupts to be issued less than 1us apart. This means that there will be several hardware interrupts and several soft interrupts generated in a very short period of time. Simon --- Sincerely Yours, Simon Shapiro Shimon@Simon-Shapiro.ORG 770.265.7340 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message