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

Commit f286299c authored by Long Li's avatar Long Li Committed by Martin K. Petersen
Browse files

scsi: storvsc: Set up correct queue depth values for IDE devices



Unlike SCSI and FC, we don't use multiple channels for IDE.  Also fix
the calculation for sub-channels.

Signed-off-by: default avatarLong Li <longli@microsoft.com>
Reviewed-by: default avatarMichael Kelley <mikelley@microsoft.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 8e1ceafe
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -1722,11 +1722,14 @@ static int storvsc_probe(struct hv_device *device,
		max_targets = STORVSC_MAX_TARGETS;
		max_channels = STORVSC_MAX_CHANNELS;
		/*
		 * On Windows8 and above, we support sub-channels for storage.
		 * On Windows8 and above, we support sub-channels for storage
		 * on SCSI and FC controllers.
		 * The number of sub-channels offerred is based on the number of
		 * VCPUs in the guest.
		 */
		max_sub_channels = (num_cpus / storvsc_vcpus_per_sub_channel);
		if (!dev_is_ide)
			max_sub_channels =
				(num_cpus - 1) / storvsc_vcpus_per_sub_channel;
	}

	scsi_driver.can_queue = (max_outstanding_req_per_channel *