Merge tag 'gvt-fixes-2021-07-15' of https://github.com/intel/gvt-linux into drm-intel...
[linux-2.6-microblaze.git] / drivers / scsi / megaraid.c
index 80f5469..56910e9 100644 (file)
@@ -1583,9 +1583,7 @@ mega_cmd_done(adapter_t *adapter, u8 completed[], int nstatus, int status)
                                memcpy(cmd->sense_buffer, pthru->reqsensearea,
                                                14);
 
-                               cmd->result = (DRIVER_SENSE << 24) |
-                                       (DID_OK << 16) |
-                                       (CHECK_CONDITION << 1);
+                               cmd->result = SAM_STAT_CHECK_CONDITION;
                        }
                        else {
                                if (mbox->m_out.cmd == MEGA_MBOXCMD_EXTPTHRU) {
@@ -1593,14 +1591,10 @@ mega_cmd_done(adapter_t *adapter, u8 completed[], int nstatus, int status)
                                        memcpy(cmd->sense_buffer,
                                                epthru->reqsensearea, 14);
 
-                                       cmd->result = (DRIVER_SENSE << 24) |
-                                               (DID_OK << 16) |
-                                               (CHECK_CONDITION << 1);
-                               } else {
-                                       cmd->sense_buffer[0] = 0x70;
-                                       cmd->sense_buffer[2] = ABORTED_COMMAND;
-                                       cmd->result |= (CHECK_CONDITION << 1);
-                               }
+                                       cmd->result = SAM_STAT_CHECK_CONDITION;
+                               } else
+                                       scsi_build_sense(cmd, 0,
+                                                        ABORTED_COMMAND, 0, 0);
                        }
                        break;
 
@@ -1617,7 +1611,7 @@ mega_cmd_done(adapter_t *adapter, u8 completed[], int nstatus, int status)
                         */
                        if( cmd->cmnd[0] == TEST_UNIT_READY ) {
                                cmd->result |= (DID_ERROR << 16) |
-                                       (RESERVATION_CONFLICT << 1);
+                                       SAM_STAT_RESERVATION_CONFLICT;
                        }
                        else
                        /*
@@ -1629,7 +1623,7 @@ mega_cmd_done(adapter_t *adapter, u8 completed[], int nstatus, int status)
                                         cmd->cmnd[0] == RELEASE) ) {
 
                                cmd->result |= (DID_ERROR << 16) |
-                                       (RESERVATION_CONFLICT << 1);
+                                       SAM_STAT_RESERVATION_CONFLICT;
                        }
                        else
 #endif