Bug 146443

Summary: Qlogic driver fails to load in OpenSUSE
Product: [openSUSE] SUSE Linux 10.1 Reporter: Nohez Poonawala <nohezp>
Component: KernelAssignee: Andreas Jaeger <aj>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Critical    
Priority: P1 - Urgent CC: adrian.schroeter, svollath
Version: Beta 3   
Target Milestone: ---   
Hardware: x86-64   
OS: Other   
Whiteboard:
Found By: Beta-Customer Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Nohez Poonawala 2006-01-28 09:04:52 UTC
Driver fails to load. Relevant output from /var/log/messages is:

-----------------------------------------------------------------
linux klogd: QLogic Fibre Channel HBA Driver
linux klogd: ACPI: PCI Interrupt 0000:23:01.0[A] -> GSI 41 (level, low) -> IRQ 209
linux klogd: qla2xxx 0000:23:01.0: Found an ISP2422, irq 209, iobase 0xffffc2000029e000
linux klogd: qla2xxx 0000:23:01.0: Configuring PCI space...
linux klogd: qla2xxx 0000:23:01.0: Configure NVRAM parameters...
linux klogd: qla2xxx 0000:23:01.0: Verifying loaded RISC code...
linux klogd: qla2xxx 0000:23:01.0: Firmware image unavailable.
linux klogd: qla2xxx 0000:23:01.0: Failed to initialize adapter
-----------------------------------------------------------------

Downgrading kernel to kernel-smp-2.6.15_git12-5 works. Relevant output from /var/log/messages after downgrading kernel is:

-----------------------------------------------------------------
linux klogd: QLogic Fibre Channel HBA Driver
linux klogd: qla2400: module not supported by Novell, setting U taint flag.
linux klogd: ACPI: PCI Interrupt 0000:21:01.0[A] -> GSI 33 (level, low) -> IRQ 225
linux klogd: qla2400 0000:21:01.0: Found an ISP2422, irq 225, iobase 0xffffc20000292000
linux klogd: qla2400 0000:21:01.0: Configuring PCI space...
linux klogd: qla2400 0000:21:01.0: Configure NVRAM parameters...
linux klogd: qla2400 0000:21:01.0: Verifying loaded RISC code...
linux klogd: qla2400 0000:21:01.0: Allocated (1061 KB) for firmware dump...
linux klogd: qla2400 0000:21:01.0: Waiting for LIP to complete...
linux klogd: qla2400 0000:21:01.0: Cable is unplugged...
linux klogd: scsi3 : qla2xxx
linux klogd: qla2400 0000:21:01.0: 
linux klogd:  QLogic Fibre Channel HBA Driver: 8.01.04-k-fw
linux klogd:   QLogic QLA2460 - PCI-X 2.0 to 4Gb FC, Single Channel
linux klogd:   ISP2422: PCI-X Mode 1 (133 MHz) @ 0000:21:01.0 hdma-, host#=3, fw=4.00.16 [IP] 
linux klogd: ACPI: PCI Interrupt 0000:23:01.0[A] -> GSI 41 (level, low) -> IRQ 50
linux klogd: qla2400 0000:23:01.0: Found an ISP2422, irq 50, iobase 0xffffc20000502000
linux klogd: qla2400 0000:23:01.0: Configuring PCI space...
linux klogd: qla2400 0000:23:01.0: Configure NVRAM parameters...
linux klogd: qla2400 0000:23:01.0: Verifying loaded RISC code...
linux klogd: qla2400 0000:23:01.0: Allocated (1061 KB) for firmware dump...
linux klogd: qla2400 0000:23:01.0: Waiting for LIP to complete...
linux klogd: qla2400 0000:23:01.0: LIP reset occured (f700).
linux klogd: qla2400 0000:23:01.0: LOOP UP detected (4 Gbps).
linux klogd: qla2400 0000:23:01.0: Topology - (F_Port), Host Loop address 0x0
linux klogd: scsi4 : qla2xxx
linux klogd: qla2400 0000:23:01.0: 
linux klogd:  QLogic Fibre Channel HBA Driver: 8.01.04-k-fw
linux klogd:   QLogic QLA2460 - PCI-X 2.0 to 4Gb FC, Single Channel
linux klogd:   ISP2422: PCI-X Mode 1 (133 MHz) @ 0000:23:01.0 hdma-, host#=4, fw=4.00.16 [IP] 
linux klogd:   Vendor: SUN       Model: SE6920            Rev: 0202
linux klogd:   Type:   Direct-Access                      ANSI SCSI revision: 03
linux klogd: SCSI device sdb: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdb: Write Protect is off
linux klogd: sdb: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdb: drive cache: write through w/ FUA
linux klogd: SCSI device sdb: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdb: Write Protect is off
linux klogd: sdb: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdb: drive cache: write through w/ FUA
linux klogd:  sdb: sdb1
linux klogd: sd 4:0:0:0: Attached scsi disk sdb
linux klogd: sd 4:0:0:0: Attached scsi generic sg2 type 0
linux klogd:   Vendor: SUN       Model: SE6920            Rev: 0202
linux klogd:   Type:   Direct-Access                      ANSI SCSI revision: 03
linux klogd: SCSI device sdc: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdc: Write Protect is off
linux klogd: sdc: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdc: drive cache: write through w/ FUA
linux klogd: SCSI device sdc: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdc: Write Protect is off
linux klogd: sdc: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdc: drive cache: write through w/ FUA
linux klogd:  sdc: sdc1
linux klogd: sd 4:0:0:1: Attached scsi disk sdc
linux klogd: sd 4:0:0:1: Attached scsi generic sg3 type 0
linux klogd:   Vendor: SUN       Model: SE6920            Rev: 0202
linux klogd:   Type:   Direct-Access                      ANSI SCSI revision: 03
linux klogd: SCSI device sdd: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdd: Write Protect is off
linux klogd: sdd: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdd: drive cache: write through w/ FUA
linux klogd: SCSI device sdd: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdd: Write Protect is off
linux klogd: sdd: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdd: drive cache: write through w/ FUA
linux klogd:  sdd: sdd1
linux klogd: sd 4:0:0:2: Attached scsi disk sdd
linux klogd: sd 4:0:0:2: Attached scsi generic sg4 type 0
linux klogd:   Vendor: SUN       Model: SE6920            Rev: 0202
linux klogd:   Type:   Direct-Access                      ANSI SCSI revision: 03
linux klogd: SCSI device sde: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sde: Write Protect is off
linux klogd: sde: Mode Sense: 77 00 10 08
linux klogd: SCSI device sde: drive cache: write through w/ FUA
linux klogd: SCSI device sde: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sde: Write Protect is off
linux klogd: sde: Mode Sense: 77 00 10 08
linux klogd: SCSI device sde: drive cache: write through w/ FUA
linux klogd:  sde: sde1
linux klogd: sd 4:0:1:0: Attached scsi disk sde
linux klogd: sd 4:0:1:0: Attached scsi generic sg5 type 0
linux klogd:   Vendor: SUN       Model: SE6920            Rev: 0202
linux klogd:   Type:   Direct-Access                      ANSI SCSI revision: 03
linux klogd: SCSI device sdf: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdf: Write Protect is off
linux klogd: sdf: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdf: drive cache: write through w/ FUA
linux klogd: SCSI device sdf: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdf: Write Protect is off
linux klogd: sdf: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdf: drive cache: write through w/ FUA
linux klogd:  sdf: sdf1
linux klogd: sd 4:0:1:1: Attached scsi disk sdf
linux klogd: sd 4:0:1:1: Attached scsi generic sg6 type 0
linux klogd:   Vendor: SUN       Model: SE6920            Rev: 0202
linux klogd:   Type:   Direct-Access                      ANSI SCSI revision: 03
linux klogd: SCSI device sdg: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdg: Write Protect is off
linux klogd: sdg: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdg: drive cache: write through w/ FUA
linux klogd: SCSI device sdg: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdg: Write Protect is off
linux klogd: sdg: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdg: drive cache: write through w/ FUA
linux klogd:  sdg: sdg1
linux klogd: sd 4:0:1:2: Attached scsi disk sdg
linux klogd: sd 4:0:1:2: Attached scsi generic sg7 type 0
linux klogd:   Vendor: SUN       Model: SE6920            Rev: 0202
linux klogd:   Type:   Direct-Access                      ANSI SCSI revision: 03
linux klogd: SCSI device sdh: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdh: Write Protect is off
linux klogd: sdh: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdh: drive cache: write through w/ FUA
linux klogd: SCSI device sdh: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdh: Write Protect is off
linux klogd: sdh: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdh: drive cache: write through w/ FUA
linux klogd:  sdh: sdh1
linux klogd: sd 4:0:2:0: Attached scsi disk sdh
linux klogd: sd 4:0:2:0: Attached scsi generic sg8 type 0
linux klogd:   Vendor: SUN       Model: SE6920            Rev: 0202
linux klogd:   Type:   Direct-Access                      ANSI SCSI revision: 03
linux klogd: SCSI device sdi: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdi: Write Protect is off
linux klogd: sdi: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdi: drive cache: write through w/ FUA
linux klogd: SCSI device sdi: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdi: Write Protect is off
linux klogd: sdi: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdi: drive cache: write through w/ FUA
linux klogd:  sdi: sdi1
linux klogd: sd 4:0:2:1: Attached scsi disk sdi
linux klogd: sd 4:0:2:1: Attached scsi generic sg9 type 0
linux klogd:   Vendor: SUN       Model: SE6920            Rev: 0202
linux klogd:   Type:   Direct-Access                      ANSI SCSI revision: 03
linux klogd: SCSI device sdj: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdj: Write Protect is off
linux klogd: sdj: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdj: drive cache: write through w/ FUA
linux klogd: SCSI device sdj: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdj: Write Protect is off
linux klogd: sdj: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdj: drive cache: write through w/ FUA
linux klogd:  sdj: sdj1
linux klogd: sd 4:0:2:2: Attached scsi disk sdj
linux klogd: sd 4:0:2:2: Attached scsi generic sg10 type 0
linux klogd:   Vendor: SUN       Model: SE6920            Rev: 0202
linux klogd:   Type:   Direct-Access                      ANSI SCSI revision: 03
linux klogd: SCSI device sdk: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdk: Write Protect is off
linux klogd: sdk: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdk: drive cache: write through w/ FUA
linux klogd: SCSI device sdk: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdk: Write Protect is off
linux klogd: sdk: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdk: drive cache: write through w/ FUA
linux klogd:  sdk: sdk1
linux klogd: sd 4:0:3:0: Attached scsi disk sdk
linux klogd: sd 4:0:3:0: Attached scsi generic sg11 type 0
linux klogd:   Vendor: SUN       Model: SE6920            Rev: 0202
linux klogd:   Type:   Direct-Access                      ANSI SCSI revision: 03
linux klogd: SCSI device sdl: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdl: Write Protect is off
linux klogd: sdl: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdl: drive cache: write through w/ FUA
linux klogd: SCSI device sdl: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdl: Write Protect is off
linux klogd: sdl: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdl: drive cache: write through w/ FUA
linux klogd:  sdl: sdl1
linux klogd: sd 4:0:3:1: Attached scsi disk sdl
linux klogd: sd 4:0:3:1: Attached scsi generic sg12 type 0
linux klogd:   Vendor: SUN       Model: SE6920            Rev: 0202
linux klogd:   Type:   Direct-Access                      ANSI SCSI revision: 03
linux klogd: SCSI device sdm: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdm: Write Protect is off
linux klogd: sdm: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdm: drive cache: write through w/ FUA
linux klogd: SCSI device sdm: 419430400 512-byte hdwr sectors (214748 MB)
linux klogd: sdm: Write Protect is off
linux klogd: sdm: Mode Sense: 77 00 10 08
linux klogd: SCSI device sdm: drive cache: write through w/ FUA
linux klogd:  sdm: sdm1
linux klogd: sd 4:0:3:2: Attached scsi disk sdm
linux klogd: sd 4:0:3:2: Attached scsi generic sg13 type 0
-----------------------------------------------------------------
Comment 1 Chris L Mason 2006-01-28 17:09:47 UTC
Hannes, external firmware issue?

linux klogd: qla2xxx 0000:23:01.0: Firmware image unavailable.
linux klogd: qla2xxx 0000:23:01.0: Failed to initialize adapter
Comment 2 Hannes Reinecke 2006-01-30 09:28:16 UTC
Yep. Is the rpm 'qlogic-firmware' installed?
Comment 3 Nohez Poonawala 2006-01-30 10:59:15 UTC
No. rpm -qa | grep -i qlogic returned nothing. Where can I find this RPM ?
Comment 4 Hannes Reinecke 2006-01-30 11:12:21 UTC
Should be on the CDs resp on the download server.
Rudi, can you check?
Comment 5 Ruediger Oertel 2006-01-31 10:13:01 UTC
I really doubt the firmware as a OSS license ...
so it can only be in FACTORY-E (inst-source-extra).
Comment 6 Chris L Mason 2006-02-01 00:48:34 UTC
*** Bug 147156 has been marked as a duplicate of this bug. ***
Comment 7 Nohez Poonawala 2006-02-02 04:29:45 UTC
Upgrading to latest kernel from SL-OSS-factory (kernel-smp-2.6.16_rc1_git3-7.x86_64.rpm) did not help. Same problem as reported earlier.
Comment 8 Nohez Poonawala 2006-02-02 07:16:50 UTC
Installed the latest kernel on SuSE10.0 (and not OpenSuSE10.1) from kotd (kernel-smp-2.6.13-sl100_branch_20060201154033.x86_64.rpm). Qlogic driver loads and can detect the devices. However on inspecting the devices with scsi_id all the devices show the same id which is incorrect. 

# for disk in b c d e f g h i j k l m
do
    echo "sd$disk -> `scsi_id -u -g -s /block/sd$disk`"
done
sdb -> 3600015d00004b200000000000000050e
sdc -> 3600015d00004b200000000000000050e
sdd -> 3600015d00004b200000000000000050e
sde -> 3600015d00004b200000000000000050e
sdf -> 3600015d00004b200000000000000050e
sdg -> 3600015d00004b200000000000000050e
sdh -> 3600015d00004b200000000000000050e
sdi -> 3600015d00004b200000000000000050e
sdj -> 3600015d00004b200000000000000050e
sdk -> 3600015d00004b200000000000000050e
sdl -> 3600015d00004b200000000000000050e
sdm -> 3600015d00004b200000000000000050e

I have 4 paths available to 3 volumes exported by the SAN. So number of devices
found by the driver is correct. Problem is with the id.

A similar check on SLES9 + SP3 (eval copy) displays correct scsi_id.
Comment 9 Hannes Reinecke 2006-02-02 07:40:21 UTC
Different bug. This bug is related to qlogic not working.
Which is does now.
For the identical scsi ID issue please open another bug and make sure you're not using an EMC Clariion as SAN.
Comment 10 Nohez Poonawala 2006-02-03 06:15:36 UTC
Installed OpenSUSE10.1 Beta3 today. Driver fails to load. 
Same error as reported earlier. 

QLogic Fibre Channel HBA Driver
GSI 21 sharing vector 0xD1 and IRQ 21
ACPI: PCI Interrupt 0000:23:01.0[A] -> GSI 41 (level, low) -> IRQ 209
qla2xxx 0000:23:01.0: Found an ISP2422, irq 209, iobase 0xffffc20000022000
qla2xxx 0000:23:01.0: Configuring PCI space...
qla2xxx 0000:23:01.0: Configure NVRAM parameters...
qla2xxx 0000:23:01.0: Verifying loaded RISC code...
qla2xxx 0000:23:01.0: Firmware image unavailable.
qla2xxx 0000:23:01.0: Failed to initialize adapter

# rpm -qa | grep -i kernel
kernel-smp-2.6.16_rc1_git3-7
kernel-source-2.6.16_rc1_git3-7
kernel-update-tool-0.9-18
Comment 11 Hannes Reinecke 2006-02-03 09:53:31 UTC
What is the output of 'rpm -qa | grep -i qlogic' ?
If empty, please install qlogic-firmware.rpm
Comment 12 Nohez Poonawala 2006-02-03 10:28:35 UTC
qlogic-firmware.rpm is not installed. Where can I find this RPM ?
I checked the install CDs. Searched on google. Searched on rpmseek.com.
Searched on qlogic website. But could not find it.
Comment 14 Hannes Reinecke 2006-02-03 10:36:40 UTC
adrian, rudi; where is the rpm?
Comment 15 Adrian Schröter 2006-02-03 14:52:09 UTC
The license seems to allow a distribution via ftp.suse.com. Rudi, can you add the rpm to Extra, please ?
Comment 16 Nohez Poonawala 2006-02-03 15:39:35 UTC
I had written to Qlogic. Andrew's reply below.

> Interesting...  The download URL is located in the Kconfig help text:
>
>         This qla2xxx driver supports all QLogic Fibre Channel
>         PCI and PCIe host adapters.
>
>         By default, firmware for the ISP parts will be loaded
>         via the Firmware Loader interface.
>
>         ISP             Firmware Filename
>         ----------      -----------------
>         21xx            ql2100_fw.bin
>         22xx            ql2200_fw.bin
>         2300, 2312      ql2300_fw.bin
>         2322            ql2322_fw.bin
>         6312, 6322      ql6312_fw.bin
>         24xx            ql2400_fw.bin
>
>         Upon request, the driver caches the firmware image until
>         the driver is unloaded.
>
>         Firmware images can be retrieved from:
>
>                 ftp://ftp.qlogic.com/outgoing/linux/firmware/
>
> You'll want to place them in the HOTPLUG firmware-directory (usually
> /lib/firmware, /usr/lib/hotplug/firmware, or /etc/firmware).
>
> Regards,
> Andrew Vasquez
Comment 17 Hannes Reinecke 2006-02-06 07:43:03 UTC
The point is _not_, that we don't have any qlogic firmware images.
The point is the qlogic-firmware rpms are not put onto the ftp server nor on the CDs.
rudi, please fix.
Comment 18 Ruediger Oertel 2006-02-06 15:48:53 UTC
the file should appear soon in
..../inst-source-extra/suse/noarch/qlogic-firmware-1.0-2.noarch.rpm

qlogic-firmware may have a very permissive license, but it simply isn't OSS,
so the rpm will not be on the OSS cd set.
Comment 19 Chris L Mason 2006-02-09 13:54:10 UTC
*** Bug 149492 has been marked as a duplicate of this bug. ***
Comment 20 Ruediger Oertel 2006-02-09 14:50:43 UTC
AJ, please close after the next sync of inst-source-extra
Comment 21 Andreas Jaeger 2006-02-09 19:08:29 UTC
synced out.
Comment 22 Jared Ottley 2006-02-21 19:44:26 UTC
Just to clarify for my own state of mind....I understand that we won't be shipping this on the OSS CDs....but are we going to include them on the SLES10 media? Or will they also be available through some other means?