From owner-freebsd-scsi Thu Feb 21 11: 1:44 2002 Delivered-To: freebsd-scsi@freebsd.org Received: from aslan.scsiguy.com (aslan.scsiguy.com [63.229.232.106]) by hub.freebsd.org (Postfix) with ESMTP id 94F9A37B400 for ; Thu, 21 Feb 2002 11:01:36 -0800 (PST) Received: from scsiguy.com (localhost [127.0.0.1]) by aslan.scsiguy.com (8.11.6/8.11.5) with ESMTP id g1LJ1nI48461; Thu, 21 Feb 2002 12:01:50 -0700 (MST) (envelope-from gibbs@scsiguy.com) Message-Id: <200202211901.g1LJ1nI48461@aslan.scsiguy.com> To: Hidetoshi Shimokawa Cc: freebsd-scsi@FreeBSD.ORG, joerg_wunsch@uriah.heep.sax.de (Joerg Wunsch) Subject: Re: READ_6 patch (Re: RBC support patch) In-Reply-To: Your message of "Thu, 21 Feb 2002 23:58:41 +0900." Date: Thu, 21 Feb 2002 12:01:49 -0700 From: "Justin T. Gibbs" Sender: owner-freebsd-scsi@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org >> This seems right way to go. > >How about this? >Could you review this patch? Close. Perform the test inside daerror(). Daerror is supposed to filter out any errors specific to the da driver prior to calling the generic error routine, so this is the place to handle this. You should also only need to do the filtering if the ccb has an error flagged in its ccb header. This should avoid any unecessary work on transactions that haven't failed. Lastly, you need to actually requeue the transaction (xpt_action() followed by a release of the device queue if the transaction was marked as having frozen the queue). Thanks for looking into this! -- Justin To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-scsi" in the body of the message