scsi: lpfc: Synchronize hardware queues with SCSI MQ interface
Now that the lower half has much better per-cpu parallelization using the hardware queues, the SCSI MQ support needs to be tied into it. The involves the following mods: - Use the hardware queue info from the midlayer to help select the hardware queue to utilize. This required change to the get_scsi-buf_xxx routines. - Remove lpfc_sli4_scmd_to_wqidx_distr() routine. No longer needed. - Includes fix for SLI-3 that does not have multi queue parallelization. Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com> Signed-off-by: James Smart <jsmart2021@gmail.com> Reviewed-by: Hannes Reinecke <hare@suse.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:

committed by
Martin K. Petersen

parent
1fbf974250
commit
ace44e48b1
@@ -4063,12 +4063,16 @@ lpfc_create_port(struct lpfc_hba *phba, int instance, struct device *dev)
|
||||
shost->max_lun = vport->cfg_max_luns;
|
||||
shost->this_id = -1;
|
||||
shost->max_cmd_len = 16;
|
||||
shost->nr_hw_queues = phba->cfg_hdw_queue;
|
||||
if (phba->sli_rev == LPFC_SLI_REV4) {
|
||||
shost->nr_hw_queues = phba->cfg_hdw_queue;
|
||||
shost->dma_boundary =
|
||||
phba->sli4_hba.pc_sli4_params.sge_supp_len-1;
|
||||
shost->sg_tablesize = phba->cfg_scsi_seg_cnt;
|
||||
}
|
||||
} else
|
||||
/* SLI-3 has a limited number of hardware queues (3),
|
||||
* thus there is only one for FCP processing.
|
||||
*/
|
||||
shost->nr_hw_queues = 1;
|
||||
|
||||
/*
|
||||
* Set initial can_queue value since 0 is no longer supported and
|
||||
|
Reference in New Issue
Block a user