* __ufshcd_transfer_req_compl - handle SCSI and query command completion
  * @hba: per adapter instance
  * @completed_reqs: bitmask that indicates which requests to complete
- * @retry_requests: whether to ask the SCSI core to retry completed requests
  */
 static void __ufshcd_transfer_req_compl(struct ufs_hba *hba,
-                                       unsigned long completed_reqs,
-                                       bool retry_requests)
+                                       unsigned long completed_reqs)
 {
        struct ufshcd_lrb *lrbp;
        struct scsi_cmnd *cmd;
                        if (unlikely(ufshcd_should_inform_monitor(hba, lrbp)))
                                ufshcd_update_monitor(hba, lrbp);
                        ufshcd_add_command_trace(hba, index, UFS_CMD_COMP);
-                       result = retry_requests ? DID_BUS_BUSY << 16 :
-                               ufshcd_transfer_rsp_status(hba, lrbp);
+                       result = ufshcd_transfer_rsp_status(hba, lrbp);
                        scsi_dma_unmap(cmd);
                        cmd->result = result;
                        /* Mark completed command as NULL in LRB */
 /**
  * ufshcd_transfer_req_compl - handle SCSI and query command completion
  * @hba: per adapter instance
- * @retry_requests: whether or not to ask to retry requests
  *
  * Returns
  *  IRQ_HANDLED - If interrupt is valid
  *  IRQ_NONE    - If invalid interrupt
  */
-static irqreturn_t ufshcd_transfer_req_compl(struct ufs_hba *hba,
-                                            bool retry_requests)
+static irqreturn_t ufshcd_transfer_req_compl(struct ufs_hba *hba)
 {
        unsigned long completed_reqs, flags;
        u32 tr_doorbell;
        spin_unlock_irqrestore(&hba->outstanding_lock, flags);
 
        if (completed_reqs) {
-               __ufshcd_transfer_req_compl(hba, completed_reqs,
-                                           retry_requests);
+               __ufshcd_transfer_req_compl(hba, completed_reqs);
                return IRQ_HANDLED;
        } else {
                return IRQ_NONE;
 /* Complete requests that have door-bell cleared */
 static void ufshcd_complete_requests(struct ufs_hba *hba)
 {
-       ufshcd_transfer_req_compl(hba, /*retry_requests=*/false);
-       ufshcd_tmc_handler(hba);
-}
-
-static void ufshcd_retry_aborted_requests(struct ufs_hba *hba)
-{
-       ufshcd_transfer_req_compl(hba, /*retry_requests=*/true);
+       ufshcd_transfer_req_compl(hba);
        ufshcd_tmc_handler(hba);
 }
 
        }
 
 lock_skip_pending_xfer_clear:
-       ufshcd_retry_aborted_requests(hba);
+       /* Complete the requests that are cleared by s/w */
+       ufshcd_complete_requests(hba);
 
        spin_lock_irqsave(hba->host->host_lock, flags);
        hba->silence_err_logs = false;
                retval |= ufshcd_tmc_handler(hba);
 
        if (intr_status & UTP_TRANSFER_REQ_COMPL)
-               retval |= ufshcd_transfer_req_compl(hba, /*retry_requests=*/false);
+               retval |= ufshcd_transfer_req_compl(hba);
 
        return retval;
 }
                        err = ufshcd_clear_cmd(hba, pos);
                        if (err)
                                break;
-                       __ufshcd_transfer_req_compl(hba, 1U << pos, false);
+                       __ufshcd_transfer_req_compl(hba, 1U << pos);
                }
        }
 
                dev_err(hba->dev,
                "%s: cmd was completed, but without a notifying intr, tag = %d",
                __func__, tag);
-               __ufshcd_transfer_req_compl(hba, 1UL << tag, /*retry_requests=*/false);
+               __ufshcd_transfer_req_compl(hba, 1UL << tag);
                goto release;
        }
 
        ufshpb_reset_host(hba);
        ufshcd_hba_stop(hba);
        hba->silence_err_logs = true;
-       ufshcd_retry_aborted_requests(hba);
+       ufshcd_complete_requests(hba);
        hba->silence_err_logs = false;
 
        /* scale up clocks to max frequency before full reinitialization */