1
0
Fork 0

hpsa: correct change_queue_depth

We change drive queue depths to match drive reported queue depths.
The name of the SML function was changed from scsi_adjust_queue_depth
changed to scsi_change_queue_depth.

Reviewed-by: Scott Teel <scott.teel@pmcs.com>
Signed-off-by: Don Brace <don.brace@pmcs.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
hifive-unleashed-5.1
Don Brace 2015-01-23 16:41:30 -06:00 committed by James Bottomley
parent 2662cab898
commit 7c0a0229bd
1 changed files with 15 additions and 1 deletions

View File

@ -217,6 +217,7 @@ static int hpsa_scsi_queue_command(struct Scsi_Host *h, struct scsi_cmnd *cmd);
static void hpsa_scan_start(struct Scsi_Host *);
static int hpsa_scan_finished(struct Scsi_Host *sh,
unsigned long elapsed_time);
static int hpsa_change_queue_depth(struct scsi_device *sdev, int qdepth);
static int hpsa_eh_device_reset_handler(struct scsi_cmnd *scsicmd);
static int hpsa_eh_abort_handler(struct scsi_cmnd *scsicmd);
@ -672,7 +673,7 @@ static struct scsi_host_template hpsa_driver_template = {
.queuecommand = hpsa_scsi_queue_command,
.scan_start = hpsa_scan_start,
.scan_finished = hpsa_scan_finished,
.change_queue_depth = scsi_change_queue_depth,
.change_queue_depth = hpsa_change_queue_depth,
.this_id = -1,
.use_clustering = ENABLE_CLUSTERING,
.eh_abort_handler = hpsa_eh_abort_handler,
@ -4007,6 +4008,19 @@ static void hpsa_scan_start(struct Scsi_Host *sh)
spin_unlock_irqrestore(&h->scan_lock, flags);
}
static int hpsa_change_queue_depth(struct scsi_device *sdev, int qdepth)
{
struct ctlr_info *h = sdev_to_hba(sdev);
if (qdepth < 1)
qdepth = 1;
else
if (qdepth > h->nr_cmds)
qdepth = h->nr_cmds;
scsi_change_queue_depth(sdev, qdepth);
return sdev->queue_depth;
}
static int hpsa_scan_finished(struct Scsi_Host *sh,
unsigned long elapsed_time)
{