On Fri, 2018-07-06 at 10:09 +0200, Johannes Thumshirn wrote: > On Thu, Jul 05, 2018 at 05:04:05PM +0000, Bart Van Assche wrote: > > On Thu, 2018-07-05 at 13:01 +0200, Johannes Thumshirn wrote: > > > - cmd->result = ScsiResult(DID_OK, S_CHECK_COND); > > > + cmd->result = DID_OK << 16 | S_CHECK_COND; > > > > Since DID_OK == 0, do we really need "DID_OK << 16 |" here? > > Please see my answers to the other patches on this. No matter what the next step is, you will have to deal with code that looks very similar to what I proposed. An example from libata: else if (qc->flags & ATA_QCFLAG_SENSE_VALID) cmd->result = SAM_STAT_CHECK_CONDITION; BTW, in drivers/scsi/sym53c8xx_2/sym_defs.h there are definitions for synonyms of standard SCSI constants. I wouldn't mind if these synonyms would be removed: #define S_GOOD SAM_STAT_GOOD #define S_CHECK_COND SAM_STAT_CHECK_CONDITION #define S_COND_MET SAM_STAT_CONDITION_MET #define S_BUSY SAM_STAT_BUSY #define S_INT SAM_STAT_INTERMEDIATE #define S_INT_COND_MET SAM_STAT_INTERMEDIATE_CONDITION_MET #define S_CONFLICT SAM_STAT_RESERVATION_CONFLICT #define S_TERMINATED SAM_STAT_COMMAND_TERMINATED #define S_QUEUE_FULL SAM_STAT_TASK_SET_FULL Thanks, Bart.