Commit 8eb8b960 authored by James Smart's avatar James Smart Committed by Martin K. Petersen

lpfc: Remove global lpfc_delay_discovery attribute in leiu of per-hba lpfc_delay_discovery

Remove global lpfc_delay_discovery attribute in leiu of per-hba
lpfc_delay_discovery
Signed-off-by: default avatarDick Kennedy <dick.kennedy@broadcom.com>
Signed-off-by: default avatarJames Smart <james.smart@broadcom.com>
Reviewed-by: default avatarHannes Reinecke <hare@suse.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 458c083e
...@@ -754,6 +754,7 @@ struct lpfc_hba { ...@@ -754,6 +754,7 @@ struct lpfc_hba {
uint32_t cfg_iocb_cnt; uint32_t cfg_iocb_cnt;
uint32_t cfg_suppress_link_up; uint32_t cfg_suppress_link_up;
uint32_t cfg_rrq_xri_bitmap_sz; uint32_t cfg_rrq_xri_bitmap_sz;
uint32_t cfg_delay_discovery;
#define LPFC_INITIALIZE_LINK 0 /* do normal init_link mbox */ #define LPFC_INITIALIZE_LINK 0 /* do normal init_link mbox */
#define LPFC_DELAY_INIT_LINK 1 /* layered driver hold off */ #define LPFC_DELAY_INIT_LINK 1 /* layered driver hold off */
#define LPFC_DELAY_INIT_LINK_INDEFINITELY 2 /* wait, manual intervention */ #define LPFC_DELAY_INIT_LINK_INDEFINITELY 2 /* wait, manual intervention */
......
...@@ -4815,11 +4815,8 @@ MODULE_PARM_DESC(lpfc_prot_guard, "host protection guard type"); ...@@ -4815,11 +4815,8 @@ MODULE_PARM_DESC(lpfc_prot_guard, "host protection guard type");
* accept and FCID/Fabric name/Fabric portname is changed. * accept and FCID/Fabric name/Fabric portname is changed.
* Default value is 0. * Default value is 0.
*/ */
int lpfc_delay_discovery; LPFC_ATTR(delay_discovery, 0, 0, 1,
module_param(lpfc_delay_discovery, int, S_IRUGO); "Delay NPort discovery when Clean Address bit is cleared.");
MODULE_PARM_DESC(lpfc_delay_discovery,
"Delay NPort discovery when Clean Address bit is cleared. "
"Allowed values: 0,1.");
/* /*
* lpfc_sg_seg_cnt - Initial Maximum DMA Segment Count * lpfc_sg_seg_cnt - Initial Maximum DMA Segment Count
...@@ -5938,6 +5935,7 @@ lpfc_get_cfgparam(struct lpfc_hba *phba) ...@@ -5938,6 +5935,7 @@ lpfc_get_cfgparam(struct lpfc_hba *phba)
lpfc_request_firmware_upgrade_init(phba, lpfc_req_fw_upgrade); lpfc_request_firmware_upgrade_init(phba, lpfc_req_fw_upgrade);
lpfc_suppress_link_up_init(phba, lpfc_suppress_link_up); lpfc_suppress_link_up_init(phba, lpfc_suppress_link_up);
lpfc_iocb_cnt_init(phba, lpfc_iocb_cnt); lpfc_iocb_cnt_init(phba, lpfc_iocb_cnt);
lpfc_delay_discovery_init(phba, lpfc_delay_discovery);
phba->cfg_enable_dss = 1; phba->cfg_enable_dss = 1;
lpfc_enable_mds_diags_init(phba, lpfc_enable_mds_diags); lpfc_enable_mds_diags_init(phba, lpfc_enable_mds_diags);
return; return;
......
...@@ -360,7 +360,6 @@ extern struct scsi_host_template lpfc_vport_template; ...@@ -360,7 +360,6 @@ extern struct scsi_host_template lpfc_vport_template;
extern struct fc_function_template lpfc_transport_functions; extern struct fc_function_template lpfc_transport_functions;
extern struct fc_function_template lpfc_vport_transport_functions; extern struct fc_function_template lpfc_vport_transport_functions;
extern int lpfc_sli_mode; extern int lpfc_sli_mode;
extern int lpfc_delay_discovery;
int lpfc_vport_symbolic_node_name(struct lpfc_vport *, char *, size_t); int lpfc_vport_symbolic_node_name(struct lpfc_vport *, char *, size_t);
int lpfc_vport_symbolic_port_name(struct lpfc_vport *, char *, size_t); int lpfc_vport_symbolic_port_name(struct lpfc_vport *, char *, size_t);
......
...@@ -594,6 +594,7 @@ static uint8_t ...@@ -594,6 +594,7 @@ static uint8_t
lpfc_check_clean_addr_bit(struct lpfc_vport *vport, lpfc_check_clean_addr_bit(struct lpfc_vport *vport,
struct serv_parm *sp) struct serv_parm *sp)
{ {
struct lpfc_hba *phba = vport->phba;
uint8_t fabric_param_changed = 0; uint8_t fabric_param_changed = 0;
struct Scsi_Host *shost = lpfc_shost_from_vport(vport); struct Scsi_Host *shost = lpfc_shost_from_vport(vport);
...@@ -615,7 +616,7 @@ lpfc_check_clean_addr_bit(struct lpfc_vport *vport, ...@@ -615,7 +616,7 @@ lpfc_check_clean_addr_bit(struct lpfc_vport *vport,
* - lpfc_delay_discovery module parameter is set. * - lpfc_delay_discovery module parameter is set.
*/ */
if (fabric_param_changed && !sp->cmn.clean_address_bit && if (fabric_param_changed && !sp->cmn.clean_address_bit &&
(vport->fc_prevDID || lpfc_delay_discovery)) { (vport->fc_prevDID || phba->cfg_delay_discovery)) {
spin_lock_irq(shost->host_lock); spin_lock_irq(shost->host_lock);
vport->fc_flag |= FC_DISC_DELAYED; vport->fc_flag |= FC_DISC_DELAYED;
spin_unlock_irq(shost->host_lock); spin_unlock_irq(shost->host_lock);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment