Deleted Added
full compact
31c31
< __FBSDID("$FreeBSD: head/sys/cam/cam_periph.c 224496 2011-07-29 20:30:28Z mav $");
---
> __FBSDID("$FreeBSD: head/sys/cam/cam_periph.c 225950 2011-10-03 20:32:55Z ken $");
1088d1087
< u_int sense_key;
1103a1103,1109
> int error_code, sense_key, asc, ascq;
>
> scsi_extract_sense_len(&saved_ccb->csio.sense_data,
> saved_ccb->csio.sense_len -
> saved_ccb->csio.sense_resid,
> &error_code, &sense_key, &asc, &ascq,
> /*show_errors*/ 1);
1110,1114c1116,1118
< sense_key = saved_ccb->csio.sense_data.flags;
< sense_key &= SSD_KEY;
< if (sense_key != SSD_KEY_NO_SENSE) {
< saved_ccb->ccb_h.status |=
< CAM_AUTOSNS_VALID;
---
> if ((sense_key != -1)
> && (sense_key != SSD_KEY_NO_SENSE)) {
> saved_ccb->ccb_h.status |= CAM_AUTOSNS_VALID;
1116,1119c1120,1121
< saved_ccb->ccb_h.status &=
< ~CAM_STATUS_MASK;
< saved_ccb->ccb_h.status |=
< CAM_AUTOSENSE_FAIL;
---
> saved_ccb->ccb_h.status &= ~CAM_STATUS_MASK;
> saved_ccb->ccb_h.status |= CAM_AUTOSENSE_FAIL;
1201c1203
< int error_code, sense_key, asc, ascq;
---
> int error_code, sense_key, asc, ascq, sense_len;
1205,1206c1207,1211
< scsi_extract_sense(sense, &error_code,
< &sense_key, &asc, &ascq);
---
> sense_len = done_ccb->csio.sense_len -
> done_ccb->csio.sense_resid;
> scsi_extract_sense_len(sense, sense_len, &error_code,
> &sense_key, &asc, &ascq,
> /*show_errors*/ 1);