mirror of
https://github.com/torvalds/linux
synced 2024-11-05 18:23:50 +00:00
[SCSI] lpfc 8.3.12: Miscellaneous Changes
- Prevent log message 1801 during vport delete. - Enable NPIV by default. - Display correct value for max Vports on SLI4 HBAs. Signed-off-by: Alex Iannicelli <alex.iannicelli@emulex.com> Signed-off-by: James Smart <james.smart@emulex.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
This commit is contained in:
parent
b19a061a78
commit
15672319e3
2 changed files with 15 additions and 7 deletions
|
@ -869,6 +869,7 @@ lpfc_get_hba_info(struct lpfc_hba *phba,
|
|||
LPFC_MBOXQ_t *pmboxq;
|
||||
MAILBOX_t *pmb;
|
||||
int rc = 0;
|
||||
uint32_t max_vpi;
|
||||
|
||||
/*
|
||||
* prevent udev from issuing mailbox commands until the port is
|
||||
|
@ -916,11 +917,17 @@ lpfc_get_hba_info(struct lpfc_hba *phba,
|
|||
if (axri)
|
||||
*axri = bf_get(lpfc_mbx_rd_conf_xri_count, rd_config) -
|
||||
phba->sli4_hba.max_cfg_param.xri_used;
|
||||
|
||||
/* Account for differences with SLI-3. Get vpi count from
|
||||
* mailbox data and subtract one for max vpi value.
|
||||
*/
|
||||
max_vpi = (bf_get(lpfc_mbx_rd_conf_vpi_count, rd_config) > 0) ?
|
||||
(bf_get(lpfc_mbx_rd_conf_vpi_count, rd_config) - 1) : 0;
|
||||
|
||||
if (mvpi)
|
||||
*mvpi = bf_get(lpfc_mbx_rd_conf_vpi_count, rd_config);
|
||||
*mvpi = max_vpi;
|
||||
if (avpi)
|
||||
*avpi = bf_get(lpfc_mbx_rd_conf_vpi_count, rd_config) -
|
||||
phba->sli4_hba.max_cfg_param.vpi_used;
|
||||
*avpi = max_vpi - phba->sli4_hba.max_cfg_param.vpi_used;
|
||||
} else {
|
||||
if (mrpi)
|
||||
*mrpi = pmb->un.varRdConfig.max_rpi;
|
||||
|
@ -1925,13 +1932,12 @@ MODULE_PARM_DESC(lpfc_sli_mode, "SLI mode selector:"
|
|||
" 2 - select SLI-2 even on SLI-3 capable HBAs,"
|
||||
" 3 - select SLI-3");
|
||||
|
||||
int lpfc_enable_npiv = 0;
|
||||
int lpfc_enable_npiv = 1;
|
||||
module_param(lpfc_enable_npiv, int, 0);
|
||||
MODULE_PARM_DESC(lpfc_enable_npiv, "Enable NPIV functionality");
|
||||
lpfc_param_show(enable_npiv);
|
||||
lpfc_param_init(enable_npiv, 1, 0, 1);
|
||||
static DEVICE_ATTR(lpfc_enable_npiv, S_IRUGO,
|
||||
lpfc_enable_npiv_show, NULL);
|
||||
static DEVICE_ATTR(lpfc_enable_npiv, S_IRUGO, lpfc_enable_npiv_show, NULL);
|
||||
|
||||
/*
|
||||
# lpfc_suppress_link_up: Bring link up at initialization
|
||||
|
|
|
@ -763,7 +763,9 @@ lpfc_create_vport_work_array(struct lpfc_hba *phba)
|
|||
spin_lock_irq(&phba->hbalock);
|
||||
list_for_each_entry(port_iterator, &phba->port_list, listentry) {
|
||||
if (!scsi_host_get(lpfc_shost_from_vport(port_iterator))) {
|
||||
lpfc_printf_vlog(port_iterator, KERN_WARNING, LOG_VPORT,
|
||||
if (!(port_iterator->load_flag & FC_UNLOADING))
|
||||
lpfc_printf_vlog(port_iterator, KERN_ERR,
|
||||
LOG_VPORT,
|
||||
"1801 Create vport work array FAILED: "
|
||||
"cannot do scsi_host_get\n");
|
||||
continue;
|
||||
|
|
Loading…
Reference in a new issue