1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-10-18 02:19:39 +00:00

ciss: Ignore data over/under run on RECEIVE_DIAGNOSTIC

This appears to be harmless, so ignore data over/under run on
diagnostics.

PR: 246279
Reviewed by: imp
Tested by: Marek Zarychta
Differential Revision: https://reviews.freebsd.org/D25155
This commit is contained in:
Peter Eriksson 2024-10-13 22:01:33 -06:00 committed by Warner Losh
parent f03e1a42e9
commit cafc839393

View File

@ -2299,13 +2299,14 @@ _ciss_report_request(struct ciss_request *cr, int *command_status, int *scsi_sta
/*
* We don't consider data under/overrun an error for the Report
* Logical/Physical LUNs commands.
* Logical/Physical LUNs, INQUIRY & RECEIVE_DIAGNOSTIC commands.
*/
if ((cc->header.host_tag & CISS_HDR_HOST_TAG_ERROR) &&
((ce->command_status == CISS_CMD_STATUS_DATA_OVERRUN) ||
(ce->command_status == CISS_CMD_STATUS_DATA_UNDERRUN)) &&
((cc->cdb.cdb[0] == CISS_OPCODE_REPORT_LOGICAL_LUNS) ||
(cc->cdb.cdb[0] == CISS_OPCODE_REPORT_PHYSICAL_LUNS) ||
(cc->cdb.cdb[0] == RECEIVE_DIAGNOSTIC) ||
(cc->cdb.cdb[0] == INQUIRY))) {
cc->header.host_tag &= ~CISS_HDR_HOST_TAG_ERROR;
debug(2, "ignoring irrelevant under/overrun error");