mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	block: rename BLK_EH_NOT_HANDLED to BLK_EH_DONE
The BLK_EH_NOT_HANDLED implies nothing happen, but very often that is not what is happening - instead the driver already completed the command. Fix the symbolic name to reflect that a little better. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Hannes Reinecke <hare@suse.com> Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
		
							parent
							
								
									12f5b93145
								
							
						
					
					
						commit
						6600593cbd
					
				
					 17 changed files with 25 additions and 25 deletions
				
			
		| 
						 | 
				
			
			@ -97,9 +97,9 @@ function
 | 
			
		|||
	This indicates that more time is required to finish the
 | 
			
		||||
	command.  Timer is restarted.  This action is counted as a
 | 
			
		||||
	retry and only allowed scmd->allowed + 1(!) times.  Once the
 | 
			
		||||
	limit is reached, action for BLK_EH_NOT_HANDLED is taken instead.
 | 
			
		||||
	limit is reached, action for BLK_EH_DONE is taken instead.
 | 
			
		||||
 | 
			
		||||
    - BLK_EH_NOT_HANDLED
 | 
			
		||||
    - BLK_EH_DONE
 | 
			
		||||
        eh_timed_out() callback did not handle the command.
 | 
			
		||||
	Step #2 is taken.
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -784,7 +784,7 @@ static void blk_mq_rq_timed_out(struct request *req, bool reserved)
 | 
			
		|||
	case BLK_EH_RESET_TIMER:
 | 
			
		||||
		blk_add_timer(req);
 | 
			
		||||
		break;
 | 
			
		||||
	case BLK_EH_NOT_HANDLED:
 | 
			
		||||
	case BLK_EH_DONE:
 | 
			
		||||
		break;
 | 
			
		||||
	default:
 | 
			
		||||
		printk(KERN_ERR "block: bad eh return: %d\n", ret);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -93,7 +93,7 @@ static void blk_rq_timed_out(struct request *req)
 | 
			
		|||
		blk_add_timer(req);
 | 
			
		||||
		blk_clear_rq_complete(req);
 | 
			
		||||
		break;
 | 
			
		||||
	case BLK_EH_NOT_HANDLED:
 | 
			
		||||
	case BLK_EH_DONE:
 | 
			
		||||
		/*
 | 
			
		||||
		 * LLD handles this for now but in the future
 | 
			
		||||
		 * we can send a request msg to abort the command
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -332,7 +332,7 @@ static enum blk_eh_timer_return nbd_xmit_timeout(struct request *req,
 | 
			
		|||
			}
 | 
			
		||||
			blk_mq_requeue_request(req, true);
 | 
			
		||||
			nbd_config_put(nbd);
 | 
			
		||||
			return BLK_EH_NOT_HANDLED;
 | 
			
		||||
			return BLK_EH_DONE;
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		dev_err_ratelimited(nbd_to_dev(nbd),
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1929,7 +1929,7 @@ static enum blk_eh_timer_return mptsas_eh_timed_out(struct scsi_cmnd *sc)
 | 
			
		|||
	MPT_SCSI_HOST *hd;
 | 
			
		||||
	MPT_ADAPTER   *ioc;
 | 
			
		||||
	VirtDevice    *vdevice;
 | 
			
		||||
	enum blk_eh_timer_return rc = BLK_EH_NOT_HANDLED;
 | 
			
		||||
	enum blk_eh_timer_return rc = BLK_EH_DONE;
 | 
			
		||||
 | 
			
		||||
	hd = shost_priv(sc->device->host);
 | 
			
		||||
	if (hd == NULL) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3053,7 +3053,7 @@ static blk_status_t do_dasd_request(struct blk_mq_hw_ctx *hctx,
 | 
			
		|||
 *
 | 
			
		||||
 * Return values:
 | 
			
		||||
 * BLK_EH_RESET_TIMER if the request should be left running
 | 
			
		||||
 * BLK_EH_NOT_HANDLED if the request is handled or terminated
 | 
			
		||||
 * BLK_EH_DONE if the request is handled or terminated
 | 
			
		||||
 *		      by the driver.
 | 
			
		||||
 */
 | 
			
		||||
enum blk_eh_timer_return dasd_times_out(struct request *req, bool reserved)
 | 
			
		||||
| 
						 | 
				
			
			@ -3065,7 +3065,7 @@ enum blk_eh_timer_return dasd_times_out(struct request *req, bool reserved)
 | 
			
		|||
	int rc = 0;
 | 
			
		||||
 | 
			
		||||
	if (!cqr)
 | 
			
		||||
		return BLK_EH_NOT_HANDLED;
 | 
			
		||||
		return BLK_EH_DONE;
 | 
			
		||||
 | 
			
		||||
	spin_lock_irqsave(&cqr->dq->lock, flags);
 | 
			
		||||
	device = cqr->startdev ? cqr->startdev : block->base;
 | 
			
		||||
| 
						 | 
				
			
			@ -3124,7 +3124,7 @@ enum blk_eh_timer_return dasd_times_out(struct request *req, bool reserved)
 | 
			
		|||
	spin_unlock(&block->queue_lock);
 | 
			
		||||
	spin_unlock_irqrestore(&cqr->dq->lock, flags);
 | 
			
		||||
 | 
			
		||||
	return rc ? BLK_EH_RESET_TIMER : BLK_EH_NOT_HANDLED;
 | 
			
		||||
	return rc ? BLK_EH_RESET_TIMER : BLK_EH_DONE;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static int dasd_init_hctx(struct blk_mq_hw_ctx *hctx, void *data,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3882,7 +3882,7 @@ static enum blk_eh_timer_return gdth_timed_out(struct scsi_cmnd *scp)
 | 
			
		|||
	struct gdth_cmndinfo *cmndinfo = gdth_cmnd_priv(scp);
 | 
			
		||||
	u8 b, t;
 | 
			
		||||
	unsigned long flags;
 | 
			
		||||
	enum blk_eh_timer_return retval = BLK_EH_NOT_HANDLED;
 | 
			
		||||
	enum blk_eh_timer_return retval = BLK_EH_DONE;
 | 
			
		||||
 | 
			
		||||
	TRACE(("%s() cmd 0x%x\n", scp->cmnd[0], __func__));
 | 
			
		||||
	b = scp->device->channel;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1963,7 +1963,7 @@ static int iscsi_has_ping_timed_out(struct iscsi_conn *conn)
 | 
			
		|||
 | 
			
		||||
enum blk_eh_timer_return iscsi_eh_cmd_timed_out(struct scsi_cmnd *sc)
 | 
			
		||||
{
 | 
			
		||||
	enum blk_eh_timer_return rc = BLK_EH_NOT_HANDLED;
 | 
			
		||||
	enum blk_eh_timer_return rc = BLK_EH_DONE;
 | 
			
		||||
	struct iscsi_task *task = NULL, *running_task;
 | 
			
		||||
	struct iscsi_cls_session *cls_session;
 | 
			
		||||
	struct iscsi_session *session;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2772,7 +2772,7 @@ blk_eh_timer_return megasas_reset_timer(struct scsi_cmnd *scmd)
 | 
			
		|||
 | 
			
		||||
	if (time_after(jiffies, scmd->jiffies_at_alloc +
 | 
			
		||||
				(scmd_timeout * 2) * HZ)) {
 | 
			
		||||
		return BLK_EH_NOT_HANDLED;
 | 
			
		||||
		return BLK_EH_DONE;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	instance = (struct megasas_instance *)scmd->device->host->hostdata;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2155,7 +2155,7 @@ static enum blk_eh_timer_return mvumi_timed_out(struct scsi_cmnd *scmd)
 | 
			
		|||
	mvumi_return_cmd(mhba, cmd);
 | 
			
		||||
	spin_unlock_irqrestore(mhba->shost->host_lock, flags);
 | 
			
		||||
 | 
			
		||||
	return BLK_EH_NOT_HANDLED;
 | 
			
		||||
	return BLK_EH_DONE;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static int
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1848,7 +1848,7 @@ static enum blk_eh_timer_return qla4xxx_eh_cmd_timed_out(struct scsi_cmnd *sc)
 | 
			
		|||
	struct iscsi_cls_session *session;
 | 
			
		||||
	struct iscsi_session *sess;
 | 
			
		||||
	unsigned long flags;
 | 
			
		||||
	enum blk_eh_timer_return ret = BLK_EH_NOT_HANDLED;
 | 
			
		||||
	enum blk_eh_timer_return ret = BLK_EH_DONE;
 | 
			
		||||
 | 
			
		||||
	session = starget_to_session(scsi_target(sc->device));
 | 
			
		||||
	sess = session->dd_data;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -282,7 +282,7 @@ void scsi_eh_scmd_add(struct scsi_cmnd *scmd)
 | 
			
		|||
enum blk_eh_timer_return scsi_times_out(struct request *req)
 | 
			
		||||
{
 | 
			
		||||
	struct scsi_cmnd *scmd = blk_mq_rq_to_pdu(req);
 | 
			
		||||
	enum blk_eh_timer_return rtn = BLK_EH_NOT_HANDLED;
 | 
			
		||||
	enum blk_eh_timer_return rtn = BLK_EH_DONE;
 | 
			
		||||
	struct Scsi_Host *host = scmd->device->host;
 | 
			
		||||
 | 
			
		||||
	trace_scsi_dispatch_cmd_timeout(scmd);
 | 
			
		||||
| 
						 | 
				
			
			@ -294,7 +294,7 @@ enum blk_eh_timer_return scsi_times_out(struct request *req)
 | 
			
		|||
	if (host->hostt->eh_timed_out)
 | 
			
		||||
		rtn = host->hostt->eh_timed_out(scmd);
 | 
			
		||||
 | 
			
		||||
	if (rtn == BLK_EH_NOT_HANDLED) {
 | 
			
		||||
	if (rtn == BLK_EH_DONE) {
 | 
			
		||||
		if (scsi_abort_command(scmd) != SUCCESS) {
 | 
			
		||||
			set_host_byte(scmd, DID_TIME_OUT);
 | 
			
		||||
			scsi_eh_scmd_add(scmd);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2087,7 +2087,7 @@ fc_eh_timed_out(struct scsi_cmnd *scmd)
 | 
			
		|||
	if (rport->port_state == FC_PORTSTATE_BLOCKED)
 | 
			
		||||
		return BLK_EH_RESET_TIMER;
 | 
			
		||||
 | 
			
		||||
	return BLK_EH_NOT_HANDLED;
 | 
			
		||||
	return BLK_EH_DONE;
 | 
			
		||||
}
 | 
			
		||||
EXPORT_SYMBOL(fc_eh_timed_out);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -3592,7 +3592,7 @@ fc_bsg_job_timeout(struct request *req)
 | 
			
		|||
 | 
			
		||||
	/* the blk_end_sync_io() doesn't check the error */
 | 
			
		||||
	if (!inflight)
 | 
			
		||||
		return BLK_EH_NOT_HANDLED;
 | 
			
		||||
		return BLK_EH_DONE;
 | 
			
		||||
	else
 | 
			
		||||
		return BLK_EH_HANDLED;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -587,7 +587,7 @@ EXPORT_SYMBOL(srp_reconnect_rport);
 | 
			
		|||
 *
 | 
			
		||||
 * If a timeout occurs while an rport is in the blocked state, ask the SCSI
 | 
			
		||||
 * EH to continue waiting (BLK_EH_RESET_TIMER). Otherwise let the SCSI core
 | 
			
		||||
 * handle the timeout (BLK_EH_NOT_HANDLED).
 | 
			
		||||
 * handle the timeout (BLK_EH_DONE).
 | 
			
		||||
 *
 | 
			
		||||
 * Note: This function is called from soft-IRQ context and with the request
 | 
			
		||||
 * queue lock held.
 | 
			
		||||
| 
						 | 
				
			
			@ -602,7 +602,7 @@ enum blk_eh_timer_return srp_timed_out(struct scsi_cmnd *scmd)
 | 
			
		|||
	pr_debug("timeout for sdev %s\n", dev_name(&sdev->sdev_gendev));
 | 
			
		||||
	return rport->fast_io_fail_tmo < 0 && rport->dev_loss_tmo < 0 &&
 | 
			
		||||
		i->f->reset_timer_if_blocked && scsi_device_blocked(sdev) ?
 | 
			
		||||
		BLK_EH_RESET_TIMER : BLK_EH_NOT_HANDLED;
 | 
			
		||||
		BLK_EH_RESET_TIMER : BLK_EH_DONE;
 | 
			
		||||
}
 | 
			
		||||
EXPORT_SYMBOL(srp_timed_out);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -6497,12 +6497,12 @@ static enum blk_eh_timer_return ufshcd_eh_timed_out(struct scsi_cmnd *scmd)
 | 
			
		|||
	bool found = false;
 | 
			
		||||
 | 
			
		||||
	if (!scmd || !scmd->device || !scmd->device->host)
 | 
			
		||||
		return BLK_EH_NOT_HANDLED;
 | 
			
		||||
		return BLK_EH_DONE;
 | 
			
		||||
 | 
			
		||||
	host = scmd->device->host;
 | 
			
		||||
	hba = shost_priv(host);
 | 
			
		||||
	if (!hba)
 | 
			
		||||
		return BLK_EH_NOT_HANDLED;
 | 
			
		||||
		return BLK_EH_DONE;
 | 
			
		||||
 | 
			
		||||
	spin_lock_irqsave(host->host_lock, flags);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -6520,7 +6520,7 @@ static enum blk_eh_timer_return ufshcd_eh_timed_out(struct scsi_cmnd *scmd)
 | 
			
		|||
	 * SCSI command was not actually dispatched to UFS driver, otherwise
 | 
			
		||||
	 * let SCSI layer handle the error as usual.
 | 
			
		||||
	 */
 | 
			
		||||
	return found ? BLK_EH_NOT_HANDLED : BLK_EH_RESET_TIMER;
 | 
			
		||||
	return found ? BLK_EH_DONE : BLK_EH_RESET_TIMER;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static const struct attribute_group *ufshcd_driver_groups[] = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -326,7 +326,7 @@ typedef int (init_rq_fn)(struct request_queue *, struct request *, gfp_t);
 | 
			
		|||
typedef void (exit_rq_fn)(struct request_queue *, struct request *);
 | 
			
		||||
 | 
			
		||||
enum blk_eh_timer_return {
 | 
			
		||||
	BLK_EH_NOT_HANDLED,
 | 
			
		||||
	BLK_EH_DONE,
 | 
			
		||||
	BLK_EH_HANDLED,
 | 
			
		||||
	BLK_EH_RESET_TIMER,
 | 
			
		||||
};
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -307,7 +307,7 @@ struct scsi_host_template {
 | 
			
		|||
	 * EH_HANDLED:		I fixed the error, please complete the command
 | 
			
		||||
	 * EH_RESET_TIMER:	I need more time, reset the timer and
 | 
			
		||||
	 *			begin counting again
 | 
			
		||||
	 * EH_NOT_HANDLED	Begin normal error recovery
 | 
			
		||||
	 * EH_DONE:		Begin normal error recovery
 | 
			
		||||
	 *
 | 
			
		||||
	 * Status: OPTIONAL
 | 
			
		||||
	 */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue