Author: mav
Date: Sat Jun  9 09:11:07 2012
New Revision: 236804
URL: http://svn.freebsd.org/changeset/base/236804

Log:
  MFC r233746:
  Be more conservative in using READ CAPACITY(16) command. Previous code
  checked PROTECT bit in INQUIRY data for all SPC devices, while it is defined
  only since SPC-3. But there are some SPC-2 USB devices were reported, that
  have PROTECT bit set, return no error for READ CAPACITY(16) command, but
  return wrong sector count value in response.

Modified:
  stable/8/sys/cam/scsi/scsi_da.c
Directory Properties:
  stable/8/sys/   (props changed)

Modified: stable/8/sys/cam/scsi/scsi_da.c
==============================================================================
--- stable/8/sys/cam/scsi/scsi_da.c     Sat Jun  9 09:08:33 2012        
(r236803)
+++ stable/8/sys/cam/scsi/scsi_da.c     Sat Jun  9 09:11:07 2012        
(r236804)
@@ -1528,9 +1528,7 @@ daregister(struct cam_periph *periph, vo
                softc->minimum_cmd_size = 16;
 
        /* Predict whether device may support READ CAPACITY(16). */
-       if (SID_ANSI_REV(&cgd->inq_data) >= SCSI_REV_SPC3 ||
-           (SID_ANSI_REV(&cgd->inq_data) >= SCSI_REV_SPC &&
-            (cgd->inq_data.spc3_flags & SPC3_SID_PROTECT))) {
+       if (SID_ANSI_REV(&cgd->inq_data) >= SCSI_REV_SPC3) {
                softc->flags |= DA_FLAG_CAN_RC16;
                softc->state = DA_STATE_PROBE2;
        }
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to