Hi Hannes, >>> + * If port state is marginal >>> + * Set the SCMD_NORETRIES_ABORT bit in scmd->state >>> + */ >>> + fc_rport_chkmarginal_set_noretries(rport, cmnd); >>> ndlp = rdata->pnode; >>> >>> if ((scsi_get_prot_op(cmnd) != SCSI_PROT_NORMAL) && >>> >> This really should be moved into the transport class; >> fc_block_rport() would be an ideal place for it. > >> [Muneendra]Correct me if I didn't understand correctly. >> As fc_block_rport cannot take arg of scsi_cmd can we add it as part of >> fc_block_scsi_eh ? > > >>Ah, right. >>Actually I meant 'fc_remote_port_chkready()'. >>That doesnt' take an scmd as argument, but I don't see why we can't modify >>it to have an additonal 'sdev' parameter... fc_remote_port_chkready function is even getting called in slave alloc (lpfc_slave_alloc, qla2xxx_slave_alloc,...) and few ELS initiative functions bnx2fc_initiate_els, qedf_initiate_els.. where scsi_cmnd cannot be passed. In these cases we need to pass NULL for scsi_cmnd ? Regards, Muneendra.
Attachment:
smime.p7s
Description: S/MIME Cryptographic Signature