Date: Tue, 30 Apr 2013 00:20:07 +0100 From: "Steven Hartland" <smh@freebsd.org> To: "Kenneth D. Merry" <ken@kdm.org> Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org Subject: Re: svn commit: r249939 - head/sys/cam/scsi Message-ID: <F701AE7B956C498AB89649768B748D81@multiplay.co.uk> References: <201304261617.r3QGH58Q048395@svn.freebsd.org> <20130429225641.GA1375@nargothrond.kdm.org>
next in thread | previous in thread | raw e-mail | index | archive | help
----- Original Message ----- From: "Kenneth D. Merry" <ken@kdm.org> To: "Steven Hartland" <smh@FreeBSD.org> Cc: <src-committers@FreeBSD.org>; <svn-src-all@FreeBSD.org>; <svn-src-head@FreeBSD.org> Sent: Monday, April 29, 2013 11:56 PM Subject: Re: svn commit: r249939 - head/sys/cam/scsi > On Fri, Apr 26, 2013 at 16:17:05 +0000, Steven Hartland wrote: >> Author: smh >> Date: Fri Apr 26 16:17:04 2013 >> New Revision: 249939 >> URL: http://svnweb.freebsd.org/changeset/base/249939 >> >> Log: >> Added available delete methods discovery during device probe, including the >> maximum sizes for said methods, which are used when processing BIO_DELETE >> requests. This includes updating UNMAP support discovery to be based on >> SBC-3 T10/1799-D Revision 31 specification. >> >> Added ATA TRIM support to cam scsi devices via ATA Pass-Through(16) >> >> sys/cam/scsi/scsi_da.c: >> - Added ATA Data Set Management TRIM support via ATA Pass-Through(16) >> as a delete_method >> > > This adds a lot of unnecessary verbosity for devices that don't support ATA > passthrough. For example: > > (da7:iscsi4:0:0:0): ATA COMMAND PASS THROUGH(16). CDB: 85 08 0a 00 00 02 00 00 00 00 00 00 00 40 ec 00 > (da7:iscsi4:0:0:0): CAM status: SCSI Status Error > (da7:iscsi4:0:0:0): SCSI status: Check Condition > (da7:iscsi4:0:0:0): Retrying command (per sense data) > (2:2:0:0): ATA COMMAND PASS THROUGH(16). CDB: 85 08 0a 00 00 02 00 00 00 00 00 00 00 40 ec 00 > (2:2:0:0): Tag: 0x00f6, Type: 1 > (2:2:0:0): CTL Status: SCSI Error > (2:2:0:0): SCSI Status: Check Condition > (2:2:0:0): SCSI sense: ILLEGAL REQUEST asc:20,0 (Invalid command operation code) > (2:2:0:0): Command byte 0 is invalid > > (da8:iscsi4:0:0:1): ATA COMMAND PASS THROUGH(16). CDB: 85 08 0a 00 00 02 00 00 00 00 00 00 00 40 ec 00 > (da8:iscsi4:0:0:1): CAM status: SCSI Status Error > (da8:iscsi4:0:0:1): SCSI status: Check Condition > (da8:iscsi4:0:0:1): Retrying command (per sense data) > (da8:iscsi4:0:0:1): ATA COMMAND PASS THROUGH(16). CDB: 85 08 0a 00 00 02 00 00 00 00 00 00 00 40 ec 00 > (da8:iscsi4:0:0:1): CAM status: SCSI Status Error > (da8:iscsi4:0:0:1): SCSI status: Check Condition > (da8:iscsi4:0:0:1): Error 5, Retries exhausted > > That is with CTL and and trasz's new iSCSI initiator, but you should see it > with any CTL configuration. (And probably with any controller or device > that doesn't support ATA passthrough.) > > So, please: > - Check for the presence of VPD page 0x89 before sending an ATA > passthrough command. The spec (sat3r03 in this case) says that > it "shall" be implemented, so I think we can count on that. > - If the target returns an illegal request sense key, don't retry > again. The target will keep returning illegal request Thanks for the report Ken I'll check this on a card I know doesn't support pass-through. Regards Steve
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?F701AE7B956C498AB89649768B748D81>