qla2xxx FC drivers not loading at boot

Hi fellas,

I have a new FC installed on a DELL blade. FC Status looks up in VRTX console though the iDRAC status is “DOWN”.

I am able to see qla2xx in lsmod but no entry for qla2xxx in dmesg, boot.log or /var/log/messages neither I am encountering any errors.

After scratching my head for while I added the module in kernel as INITRD_MODULES=“ahci megaraid_sas qla2xxx” followed by mkinitrd. But after reboot I still getting the link “DOWN” in remote console.

Any guess whats missing or any module conflicts ?

Hi & welcome to the forums!

What FC adapter is it, that you have installed in your server? What does “lspci -nn” report (also note the numeric IDs in square brackets)?

Can you unload the driver (“rmmod qla2xxx”)? That’d be an indicator that the module is indeed not in use. And it’d allow to manually (re-)load it, specifying debug parameters.

When looking at the output from “modinfo qla2xxx”, you should see “parm: ql2xextended_error_logging:Option to enable extended error logging”, with one of the possible values being " 0x10000000 - Device Discovery" and another being “0x40000000 - Module Init & Probe” (all the values are bit flags, so to activate more than one debug level, you need to add the individual numbers. 0x7fffffff is “enable all”, which would be quite verbose on an active adapter).

So either add that parameter to a new entry in /etc/modprobe.d/99-local.conf and reload the module or directly invoke “modprobe qla2xxx ql2xextended_error_logging=0x50000000”, maybe you’ll see more descriptive infos in “dmesg” output. (I just tested that on a machine without supported adapter, but would get none but a single module load message, even with 0x7fffffff.)

Please also note the list of supported PCI ids at the top of the “modinfo” output - is your adapter’s ID included?

Regards,
J

Hi J,

Device : QLogic QLE2692 16Gb FC Adapter- 2100F4E9D4550566"

Yes , module is being unloaded by “rmmod” . I have tried to reload it with debugging options using 0x7fffffff but dmesg reports as below:

[ 789.898180] qla2xxx [0000:00:00.0]-0005: : QLogic Fibre Channel HBA Driver: 8.07.00.18-k-debug.
[82995.657015] qla2xxx [0000:00:00.0]-0005: : QLogic Fibre Channel HBA Driver: 8.07.00.18-k-debug.
[83235.514048] qla2xxx [0000:00:00.0]-0005: : QLogic Fibre Channel HBA Driver: 8.07.00.18-k-debug.

Though i cant locate PCI device ID in modinfo output:

sgdcplm01:~ # lspci |grep -i fibre
07:00.0 Fibre Channel: QLogic Corp. Device 2261 (rev 01)
07:00.1 Fibre Channel: QLogic Corp. Device 2261 (rev 01)

sgdcplm01:~ # lspci -n |grep 2261
07:00.0 0c04: 1077:2261 (rev 01)
07:00.1 0c04: 1077:2261 (rev 01)

sgdcplm01:~ # modinfo qla2xxx|grep 2261
sgdcplm01:~ # modinfo qla2xxx|more
filename: /lib/modules/3.0.101-63-default/kernel/drivers/scsi/qla2xxx/qla2xxx.ko
firmware: ql2700_fw.bin
firmware: ql8300_fw.bin
firmware: ql2600_fw.bin
firmware: ql2500_fw.bin
firmware: ql2400_fw.bin
firmware: ql2322_fw.bin
firmware: ql2300_fw.bin
firmware: ql2200_fw.bin
firmware: ql2100_fw.bin
version: 8.07.00.18-k
license: GPL
description: QLogic Fibre Channel HBA Driver
author: QLogic Corporation
srcversion: B8FA2003A9B2D0FB4CEA8CE
alias: pci:v00001077d00002271svsdbcsci*
alias: pci:v00001077d00002071svsdbcsci*
alias: pci:v00001077d00008044svsdbcsci*
alias: pci:v00001077d0000F001svsdbcsci*
alias: pci:v00001077d00008031svsdbcsci*
alias: pci:v00001077d00008021svsdbcsci*
alias: pci:v00001077d00008001svsdbcsci*
alias: pci:v00001077d00002031svsdbcsci*
alias: pci:v00001077d00002532svsdbcsci*
alias: pci:v00001077d00005432svsdbcsci*
alias: pci:v00001077d00005422svsdbcsci*
alias: pci:v00001077d00008432svsdbcsci*
alias: pci:v00001077d00002432svsdbcsci*
alias: pci:v00001077d00002422svsdbcsci*
alias: pci:v00001077d00006322svsdbcsci*
alias: pci:v00001077d00006312svsdbcsci*
alias: pci:v00001077d00002322svsdbcsci*
alias: pci:v00001077d00002312svsdbcsci*
alias: pci:v00001077d00002300svsdbcsci*
alias: pci:v00001077d00002200svsdbcsci*
alias: pci:v00001077d00002100svsdbcsci*
depends: scsi_mod,scsi_transport_fc
supported: yes
vermagic: 3.0.101-63-default SMP mod_unload modversions
signer: SUSE Linux Enterprise Secure Boot Signkey

Hi loadsuse,

sgdcplm01:~ # lspci |grep -i fibre
sgdcplm01:~ # lspci -n |grep 2261

Just for the records: To combine those steps is why I suggested “lspci -nn” - it will list both name and number on a single line :wink:

Though i cant locate PCI device ID in modinfo output

That’s the reason the adapter isn’t detected. The driver (at that software level) is not supporting this hardware.

You may want to check with SUSE Support to see if an updated driver can be made available for SLES11SP4 (or maybe already is available).

With regards,
J

Hi.

On 07.03.2019 14:04, jmozdzen wrote:[color=blue]

Hi loadsuse,
[color=green]

sgdcplm01:~ # lspci |grep -i fibre
sgdcplm01:~ # lspci -n |grep 2261[/color]

Just for the records: To combine those steps is why I suggested “lspci
-nn” - it will list both name and number on a single line :wink:
[color=green]

Though i cant locate PCI device ID in modinfo output[/color]

That’s the reason the adapter isn’t detected. The driver (at that
software level) is not supporting this hardware.

You may want to check with SUSE Support to see if an updated driver can
be made available for SLES11SP4 (or maybe already is available).
[/color]

FTR, the kernel mentioned here (3.0.101-63-default) is a pre-sp4
version, and very old.

CU,

Massimo Rosen
Micro Focus Knowledge Partner
No emails please!
http://www.cfc-it.de

On 07.03.2019 14:12, Massimo Rosen wrote:
[color=blue]

FTR, the kernel mentioned here (3.0.101-63-default) is a pre-sp4
version, and very old.[/color]
I take that back. It’s the SP4 FCS kernel (dated 2015), which doesn’t
make it much better.

CU,
Massimo Rosen
Micro Focus Knowledge Partner
No emails please!
http://www.cfc-it.de

I don’t have the active SUSE support for now.Though as a workaround I tried downloading the Qlogic rendered open source drivers, but getting the below error while installing:

Is this kernel module dependencies needed . I have tried with --nodeps switch to skip this but drivers version still remained the same.

Please let me know if I am going on an unexpected route.

Excerpt from the O/P:

sgdcplm01:~ # rpm -ivh qlgc-qla2xxx-kmp-default-10.01.00.33.12.4_k_k4.12.14_94.41-1.sles12sp4.x86_64.rpm
warning: qlgc-qla2xxx-kmp-default-10.01.00.33.12.4_k_k4.12.14_94.41-1.sles12sp4.x86_64.rpm: Header V4 DSA signature: NOKEY, key ID 1c9c8ff1
error: Failed dependencies:
ksym(default:___ratelimit) = 89a1a77e is needed by qlgc-qla2xxx-kmp-default-10.01.00.33.12.4_k_k4.12.14_94.41-1.sles12sp4.x86_64
ksym(default:__alloc_workqueue_key) = 43a53735 is needed by qlgc-qla2xxx-kmp-default-10.01.00.33.12.4_k_k4.12.14_94.41-1.sles12sp4.x86_64
ksym(default:__const_udelay) = eae3dfd6 is needed by qlgc-qla2xxx-kmp-default-10.01.00.33.12.4_k_k4.12.14_94.41-1.sles12sp4.x86_64
ksym(default:__dynamic_pr_debug) = 4e536271 is needed by qlgc-qla2xxx-kmp-default-10.01.00.33.12.4_k_k4.12.14_94.41-1.sles12sp4.x86_64
ksym(default:fentry) = bdfb6dbb is needed by qlgc-qla2xxx-kmp-default-10.01.00.33.12.4_k_k4.12.14_94.41-1.sles12sp4.x86_64
ksym(default:__init_waitqueue_head) = a6682fdd is needed by qlgc-qla2xxx-kmp-default-10.01.00.33.12.4_k_k4.12.14_94.41-1.sles12sp4.x86_64
ksym(default:__kmalloc) = d2b09ce5 is needed by qlgc-qla2xxx-kmp-default-10.01.00.33.12.4_k_k4.12.14_94.41-1.sles12sp4.x86_64
ksym(default:__mutex_init) = 8a3b82f5 is needed by qlgc-qla2xxx-kmp-default-10.01.00.33.12.4_k_k4.12.14_94.41-1.sles12sp4.x86_64

Hi loadsuse,

from your other post:

[kernel level] 3.0.101-63-default

and your thread subject says SLES11 SP4.

But the module you downloaded is for 4.12.14_94.41 SLES12 SP4.

Modules are usually kernel version dependent and so installing that RPM with --nodeps will likely be no good idea.

How about updating to a recent and supported SLES level (SLES12 SP4 comes to mind :wink: )?

Regards,
J