Do not fail devices just for errors in descriptor format.

MFC after:	1 week
Sponsored by:	iXsystems, Inc.
This commit is contained in:
Alexander Motin 2018-04-06 19:47:44 +00:00
parent 62d28676c3
commit d8d4983e5e
2 changed files with 6 additions and 3 deletions

View File

@ -1119,7 +1119,8 @@ cddone(struct cam_periph *periph, union ccb *done_ccb)
* supported" (0x25) error.
*/
if ((have_sense) && (asc != 0x25)
&& (error_code == SSD_CURRENT_ERROR)) {
&& (error_code == SSD_CURRENT_ERROR
|| error_code == SSD_DESC_CURRENT_ERROR)) {
const char *sense_key_desc;
const char *asc_desc;

View File

@ -4649,7 +4649,8 @@ dadone(struct cam_periph *periph, union ccb *done_ccb)
(((csio->ccb_h.status & CAM_STATUS_MASK) ==
CAM_REQ_INVALID) ||
((have_sense) &&
(error_code == SSD_CURRENT_ERROR) &&
(error_code == SSD_CURRENT_ERROR ||
error_code == SSD_DESC_CURRENT_ERROR) &&
(sense_key == SSD_KEY_ILLEGAL_REQUEST)))) {
cam_periph_lock(periph);
softc->flags &= ~DA_FLAG_CAN_RC16;
@ -4674,7 +4675,8 @@ dadone(struct cam_periph *periph, union ccb *done_ccb)
*/
if ((have_sense)
&& (asc != 0x25) && (asc != 0x44)
&& (error_code == SSD_CURRENT_ERROR)) {
&& (error_code == SSD_CURRENT_ERROR
|| error_code == SSD_DESC_CURRENT_ERROR)) {
const char *sense_key_desc;
const char *asc_desc;