Date: Tue, 20 Aug 2002 20:16:36 -0600 From: "Kenneth D. Merry" <ken@kdm.org> To: Thomas Quinot <thomas@cuivre.fr.eu.org> Cc: Nate Lawson <nate@root.org>, scsi@FreeBSD.ORG, current@FreeBSD.ORG Subject: Re: Proliferating quirk table entries Message-ID: <20020820201636.A99025@panzer.kdm.org> In-Reply-To: <20020821024614.A722@melusine.cuivre.fr.eu.org>; from thomas@cuivre.fr.eu.org on Wed, Aug 21, 2002 at 02:46:14AM %2B0200 References: <Pine.BSF.4.21.0208161526550.43909-100000@root.org> <20020821024614.A722@melusine.cuivre.fr.eu.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Aug 21, 2002 at 02:46:14 +0200, Thomas Quinot wrote: > Le 2002-08-17, Nate Lawson écrivait : > > > I'm working on cleaning up quirk entries in scsi_da.c, especially ones > > related to READ/WRITE 6->10 escalation. For those just joining in, there > > is a function (cmd6workaround) that handles a R/W6 error by translating > > the cdb to 10 bytes and restarting it. > > It might be worthwhile moving this to some generic part in the CAM > framework, instead of having it in the da driver. Similar promotion > is performed for some commands (MODE_{SELECT,SENSE}_6 as well as > {READ,WRITE}_6) in a rather ad hoc fashion in atapi-cam. At least > the cmd6workaround function should be factored in some way; as for the > try 6 -> fail -> retry 10 process, however, I am not sure this can > be readily generalised to ATAPI devices (which are explicitly specified > to only support the _10 variants) as these tend to have very strange > reactions to CDBs they cannot handle properly. The right way to handle the 6/10 byte stuff is to have it be a function of the transport type (see the CAM_NEW_TRAN_CODE stuff). The peripheral drivers and userland applications can query the transport type and send 6 or 10 byte commands as appropriate. If we're going to come up with a generic solution, that's probably the direction we need to be heading. Ken -- Kenneth Merry ken@kdm.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020820201636.A99025>