> > scsi_add_host() allocates shost->can_queue tags. ufshcd_init() sets > shost->can_queue to hba->nutrs. In other words, we know that tag values > will be in the range [0, hba->nutrs). Hence remove the checks that > verify that blk_get_request() returns a tag in this range. This check > was introduced by commit 14497328b6a6 ("scsi: ufs: verify command tag > validity"). > > Cc: Alim Akhtar <alim.akhtar@xxxxxxxxxxx> > Cc: Avri Altman <avri.altman@xxxxxxx> > Signed-off-by: Bart Van Assche <bvanassche@xxxxxxx> > static int ufshcd_abort(struct scsi_cmnd *cmd) > { > - struct Scsi_Host *host; > - struct ufs_hba *hba; > + struct Scsi_Host *host = cmd->device->host; > + struct ufs_hba *hba = shost_priv(host); > + unsigned int tag = cmd->request->tag; > + struct ufshcd_lrb *lrbp = &hba->lrb[tag]; > unsigned long flags; > - unsigned int tag; > int err = 0; > - struct ufshcd_lrb *lrbp; > u32 reg; > > - host = cmd->device->host; > - hba = shost_priv(host); > - tag = cmd->request->tag; > - lrbp = &hba->lrb[tag]; lrbp is used below ? if (lrbp->lun == UFS_UPIU_UFS_DEVICE_WLUN) ... Thanks, Avri > - if (!ufshcd_valid_tag(hba, tag)) { > - dev_err(hba->dev, > - "%s: invalid command tag %d: cmd=0x%p, cmd- > >request=0x%p", > - __func__, tag, cmd, cmd->request); > - BUG(); > - } > - > ufshcd_hold(hba, false); > reg = ufshcd_readl(hba, REG_UTP_TRANSFER_REQ_DOOR_BELL); > /* If command is already aborted/completed, return SUCCESS */