RE: [PATCH 10/21] ufs: Remove ufshcd_valid_tag()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> 
> 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 */




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux