Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 299b6c07 authored by Tomas Winkler's avatar Tomas Winkler Committed by James Bottomley
Browse files

scsi_debug: schedule_resp fix input variable check



The function should never be called with cmnd NULL so
put a fat WARN there.
Fix also smatch wraning:
schedule_resp() warn: variable dereferenced before check 'cmnd'

Signed-off-by: default avatarTomas Winkler <tomas.winkler@intel.com>
Acked-by: default avatarDouglas Gilbert <dgilbert@interlog.com>
Reviewed-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: default avatarJames Bottomley <JBottomley@Odin.com>
parent 58a8635d
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -3941,13 +3941,20 @@ schedule_resp(struct scsi_cmnd *cmnd, struct sdebug_dev_info *devip,
	unsigned long iflags;
	int k, num_in_q, qdepth, inject;
	struct sdebug_queued_cmd *sqcp = NULL;
	struct scsi_device *sdp = cmnd->device;
	struct scsi_device *sdp;

	/* this should never happen */
	if (WARN_ON(!cmnd))
		return SCSI_MLQUEUE_HOST_BUSY;

	if (NULL == cmnd || NULL == devip) {
		pr_warn("called with NULL cmnd or devip pointer\n");
	if (NULL == devip) {
		pr_warn("called devip == NULL\n");
		/* no particularly good error to report back */
		return SCSI_MLQUEUE_HOST_BUSY;
	}

	sdp = cmnd->device;

	if ((scsi_result) && (SCSI_DEBUG_OPT_NOISE & scsi_debug_opts))
		sdev_printk(KERN_INFO, sdp, "%s: non-zero result=0x%x\n",
			    __func__, scsi_result);