HP NC-Series QLogic Driver for Linux hangs during an installation of SUSE Linux Enterprise Server 10 SP3.
This document (7005974) is provided subject to the disclaimer at the end of this document.
Environment
Situation
From HP Bulletin:
Document ID: c01955453
Version: 1
http://h20000.www2.hp.com/bizsupport/TechSupport/Document.jsp?lang=de&cc=de&taskId=110&prodSeriesId=3884310&prodTypeId=15351&prodSeriesId=3884310&objectID=c01955453
When installing SUSE Linux Enterprise Server 10 SP3 on an HP ProLiant server configured with certain network adapters, the installation may stop responding when attempting to load any version of the HP NC-Series QLogic Driver for Linux. When this occurs, the last module to load will be the netxen_nic and the following will be displayed in Virtual Console 3 (Alt+F3):
insmod /modules/netxen_nic.ko
The Bulletin only provides instructions on how to install the driver module via DUD (Driver Update Disk) during installation and on how to provide the DUD via network installation.
The aim of this document is to provide information on how to include the DUD into a SUSE Linux Enterprise Server 10 Service Pack 3 installation DVD.
Resolution
x86_64 systems:
1. download SLES-10-SP3-DVD-x86_64-GM-DVD1.iso
2. mkdir /tmp/SP3
3. mount -o loop SLES-10-SP3-DVD-x86_64-GM-DVD1.iso /tmp/SP3/
4. mkdir /tmp/SP3_new
5. cp -Rv /tmp/SP3/* /tmp/SP3_new
6. mkdir -p /tmp/initrd/tmp
7. cd /tmp/initrd
8. mv /tmp/SP3_new/boot/x86_64/loader/initrd /tmp/initrd/tmp/
9. download "nx_nic-4.0.516-1.src.rpm" file from the bulletin download link to "/tmp/initrd/"
10. Please execute the following on one line:
rpm2cpio nx_nic-4.0.516-1.src.rpm | cpio -idv; tar -zxvf nx_nic-4.0.516.tar.gz; cd tmp; gunzip < initrd | cpio -idv; cp ../nx_nic-4.0.516/bin/*bin lib/firmware/
(Note: you will end up in directory "/tmp/initrd/tmp/" please execute steps 11, 12 and 13 from that directory)
11. mkdir -p linux/suse/x86_64-sles10;
echo "UpdateName: Updated netxen_nic driver"> linux/suse/x86_64-sles10/dud.config
echo "UpdateID: netxen_nic">> linux/suse/x86_64-sles10/dud.config
12. rm initrd; find | cpio --quiet -o -Hnewc | gzip -c9 > ../initrd
13. cp ../initrd /tmp/SP3_new/boot/x86_64/loader/
14. download the driver update disk "netxen_nic-4.0.31-x86_64-dd-sles10-2.6.16.60-0.54.5.iso" from the download link on the bulletin to "/tmp/SP3_new/"
15. mv /tmp/SP3_new/netxen_nic-4.0.31-x86_64-dd-sles10-2.6.16.60-0.54.5.iso /tmp/SP3_new/driverupdate
16. cd /tmp/SP3_new/
17. mkisofs -r -o /tmp/SLES-10-SP3-DVD-x86_64-GM-DVD1 -b boot/x86_64/loader/isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table /tmp/SP3_new
18. burn the created SLES-10-SP3-DVD-x86_64-GM-DVD1.iso file created in "/tmp/" and try to install
i386 systems:
1. download SLES-10-SP3-DVD-i386-GM-DVD1.iso
2. mkdir /tmp/SP3
3. mount -o loop SLES-10-SP3-DVD-i386-GM-DVD1.iso /tmp/SP3/
4. mkdir /tmp/SP3_new
5. cp -Rv /tmp/SP3/* /tmp/SP3_new
6. mkdir -p /tmp/initrd/tmp
7. cd /tmp/initrd
8. mv /tmp/SP3_new/boot/i386/loader/initrd /tmp/initrd/tmp/
9. download "nx_nic-4.0.516-1.src.rpm" file from the bulletin download link to "/tmp/initrd/"
10. Please execute the following on one line:
rpm2cpio nx_nic-4.0.516-1.src.rpm | cpio -idv; tar -zxvf nx_nic-4.0.516.tar.gz; cd tmp; gunzip < initrd | cpio -idv; cp ../nx_nic-4.0.516/bin/*bin lib/firmware/
(Note: you will end up in directory "/tmp/initrd/tmp/" please execute steps 11, 12 and 13 from that directory)
11. mkdir -p linux/suse/i386-sles10;
echo "UpdateName: Updated netxen_nic driver"> linux/suse/i386-sles10/dud.config
echo "UpdateID: netxen_nic">> linux/suse/i386-sles10/dud.config
12. rm initrd; find | cpio --quiet -o -Hnewc | gzip -c9 > ../initrd
13. cp ../initrd /tmp/SP3_new/boot/i386/loader/
14. download the driver update disk "netxen_nic-4.0.31-i386-dd-sles10-2.6.16.60-0.54.5.iso" from the download link on the bulletin to "/tmp/SP3_new/"
15. mv /tmp/SP3_new/netxen_nic-4.0.31-i386-dd-sles10-2.6.16.60-0.54.5.iso /tmp/SP3_new/driverupdate
16. cd /tmp/SP3_new/
17. mkisofs -r -o /tmp/SLES-10-SP3-DVD-i386-GM-DVD1.iso -b boot/i386/loader/isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table /tmp/SP3_new
18. burn the created SLES-10-SP3-DVD-i386-GM-DVD1.iso file created in "/tmp/" and try to install
Note:
However in both cases you will still need to define "brokenmodules=netxen_nic" in the "boot options". But you will not need to select the DUD manually via F5.
If you want to get rid of any manual intervention you will need to copy the pre-compiled driver module into the initrd as well. This can be achieved by adding step 11.1 to the above instuctions:
For x86_64 systems:
11.1 mkdir /tmp/net_xen/
mount netxen_nic-4.0.31-x86_64-dd-sles10-2.6.16.60-0.54.5.iso to /tmp/net_xen/
rm /tmp/initrd/tmp/lib/modules/2.6.16.60-override-default/initrd/netxen_nic.ko
cp /tmp/net_xen/01/linux/suse/x86_64-sles10/modules/netxen_nic.ko /tmp/initrd/tmp/lib/modules/2.6.16.60-override-default/initrd/
chmod 644 /tmp/initrd/tmp/lib/modules/2.6.16.60-override-default/initrd/netxen_nic.ko
For i386 systems:
11.1 mkdir /tmp/net_xen/
mount netxen_nic-4.0.31-i386-dd-sles10-2.6.16.60-0.54.5.iso to /tmp/net_xen/
rm /tmp/initrd/tmp/lib/modules/2.6.16.60-override-default/initrd/netxen_nic.ko
cp /tmp/net_xen/01/linux/suse/i386-sles10/modules/netxen_nic.ko /tmp/initrd/tmp/lib/modules/2.6.16.60-override-default/initrd/
chmod 644 /tmp/initrd/tmp/lib/modules/2.6.16.60-override-default/initrd/netxen_nic.ko
Disclaimer
This Support Knowledgebase provides a valuable tool for SUSE customers and parties interested in our products and solutions to acquire information, ideas and learn from one another. Materials are provided for informational, personal or non-commercial use within your organization and are presented "AS IS" WITHOUT WARRANTY OF ANY KIND.
- Document ID:7005974
- Creation Date: 17-May-2010
- Modified Date:03-Mar-2020
-
- SUSE Linux Enterprise Server
For questions or concerns with the SUSE Knowledgebase please contact: tidfeedback[at]suse.com