Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
For bugs related to Red Hat Enterprise Linux 5 product line. The current stable release is 5.10. For Red Hat Enterprise Linux 6 and above, please visit Red Hat JIRA https://issues.redhat.com/secure/CreateIssue!default.jspa?pid=12332745 to report new issues.

Bug 714243

Summary: Solarflare network adapter not available during install
Product: Red Hat Enterprise Linux 5 Reporter: Robert Stonehouse <rstonehouse>
Component: anacondaAssignee: Martin Gracik <mgracik>
Status: CLOSED ERRATA QA Contact: Release Test Team <release-test-team-automation>
Severity: medium Docs Contact:
Priority: medium    
Version: 5.7CC: agospoda, atodorov, dcleal, dmach, jbastian, jstodola, mgracik, sghosh
Target Milestone: rcKeywords: OtherQA
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: anaconda-11.1.2.243-1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-02-21 05:38:14 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 726828    

Description Robert Stonehouse 2011-06-17 17:08:38 UTC
Description of problem:
  The "sfc.ko" network driver is a kernel modules shipped within the kernel default RPM(s) that gets installed, but it is not included in the initrd for the installer.

  This means that Solarflare network interfaces cannot be configured at install time nor used during the install e.g. for iSCSI based installations


Version-Release number of selected component (if applicable):
  RHEL5.6 install DVD image, (and pxeboot and xen initrd images)


How reproducible:
  100% (or by inspection)


Steps to Reproduce:
1. Install a Solarflare network adapter (PCI vendor ID 1924)
2. Boot from RHEL5.6 64 bit media (likely to affect other versions as well)
3. Continue through installation


Actual results:
No "sfc.ko" driver is loaded even though PCI devices with matching ID are present.
No option to configure ethX devices that correspond to network ports on the Solarflare network adapter

Expected results:
Options to configure all ethX devices that correspond to network ports on the enumerated Solarflare network adapter(s).
This is what happens for nearly all other networking adapters during install.


Additional info:
Note I work for Solarflare Communications but I followed the instructions on the account creation page and used a secondary e-mail address (considering this is a public forum).

This bug came from a report from one of Solarflare's customers. We have built a driver disk to work around this issue but as the "sfc" driver is in the upstream kernel it would be helpful if this could also be included in the RedHat installer.

Please note that sfc.ko has a small number of dependencies on other modules
  $ grep sfc modules.dep
  modules.dep:sfc: i2c-algo-bit mdio i2c-core mtdpart mtdcore

I have identified these places where there are already a number of network adapter modules present on the install ISO:
  images/pxeboot/initrd.img
  images/xen/initrd.img
  images/boot.iso:isolinux/initrd.img
There are other images in the same directory which I did not inspect.

I also note that the "pci.ids" file does not have vendor (1924:) or device IDs for the network adapters that the sfc.ko driver supports.


If this request would be better via a different channel of communication then please redirect me.

Thanks in advance

Comment 1 Robert Stonehouse 2011-06-20 15:41:14 UTC
This bug/missing feature also applies to RHEL6 and RHEL6 update 1 AFAIK

Should I open separate bugs for them referencing this one? or will this single bugzilla entry suffice

Thanks for you help

Comment 2 Dave Cantrell 2011-06-20 17:10:18 UTC
You need a separate bug for RHEL 6.  There's no need to file one for RHEL 6.0 and for 6.1.  Just file one for RHEL 6.1.

Comment 4 Dave Cantrell 2011-08-09 21:32:25 UTC
(In reply to comment #0)
> Description of problem:
>   The "sfc.ko" network driver is a kernel modules shipped within the kernel
> default RPM(s) that gets installed, but it is not included in the initrd for
> the installer.

The network drivers we include in the initrd.img get selected based on the definitions in loader2/module-info in the anaconda source.  RHEL-6 and beyond do not use this method to determine what modules to select.

The sfc.ko module needs an entry in this file if support is desired during installation.  Does this network device need anything special to configure it?  The network devices supported during installation are Ethernet devices, so if this device requires any other sort of strange configuration, the changes will be too invasive to the RHEL-5 installer.

>   This means that Solarflare network interfaces cannot be configured at install
> time nor used during the install e.g. for iSCSI based installations
> 
> 
> Version-Release number of selected component (if applicable):
>   RHEL5.6 install DVD image, (and pxeboot and xen initrd images)
> 
> 
> How reproducible:
>   100% (or by inspection)
> 
> 
> Steps to Reproduce:
> 1. Install a Solarflare network adapter (PCI vendor ID 1924)
> 2. Boot from RHEL5.6 64 bit media (likely to affect other versions as well)
> 3. Continue through installation
> 
> 
> Actual results:
> No "sfc.ko" driver is loaded even though PCI devices with matching ID are
> present.
> No option to configure ethX devices that correspond to network ports on the
> Solarflare network adapter
> 
> Expected results:
> Options to configure all ethX devices that correspond to network ports on the
> enumerated Solarflare network adapter(s).
> This is what happens for nearly all other networking adapters during install.
> 
> 
> Additional info:
> Note I work for Solarflare Communications but I followed the instructions on
> the account creation page and used a secondary e-mail address (considering this
> is a public forum).
> 
> This bug came from a report from one of Solarflare's customers. We have built a
> driver disk to work around this issue but as the "sfc" driver is in the
> upstream kernel it would be helpful if this could also be included in the
> RedHat installer.
> 
> Please note that sfc.ko has a small number of dependencies on other modules
>   $ grep sfc modules.dep
>   modules.dep:sfc: i2c-algo-bit mdio i2c-core mtdpart mtdcore

So long as the sfc.ko module has dependencies on these modules, they will be picked up and included in the initrd.img.  However, if the dependencies are not part of the module information so that doing "modprobe sfc" loads the necessary dependent modules, the changes to the RHEL-5 installer will be too invasive.

> I have identified these places where there are already a number of network
> adapter modules present on the install ISO:
>   images/pxeboot/initrd.img
>   images/xen/initrd.img
>   images/boot.iso:isolinux/initrd.img
> There are other images in the same directory which I did not inspect.
> 
> I also note that the "pci.ids" file does not have vendor (1924:) or device IDs
> for the network adapters that the sfc.ko driver supports.

Submit them:
http://pciids.sourceforge.net/

> If this request would be better via a different channel of communication then
> please redirect me.

If your company is a partner with Red Hat, coordinate these changes through your partner manager.

Comment 5 Robert Stonehouse 2011-08-10 08:02:41 UTC
Thanks for looking at this.

(In reply to comment #4)
> The sfc.ko module needs an entry in this file if support is desired during
> installation.  Does this network device need anything special to configure it? 
> The network devices supported during installation are Ethernet devices, so if
> this device requires any other sort of strange configuration, the changes will
> be too invasive to the RHEL-5 installer.

Solarflare Network adapters are 10G ethernet only devices.
No strange config, no binary firmware bob

> So long as the sfc.ko module has dependencies on these modules, they will be
> picked up and included in the initrd.img.  However, if the dependencies are

I was trying to ensure that all the issues got fixed in one go - which is why I mentioned module dependencies
The kernel module "sfc.ko" (which is already supplied in the main kernel RPMs) does declare all it's dependencies.

> http://pciids.sourceforge.net/

Again the Solarflare PCI IDs have been in that database a long time.
I didn't know if this was a hard-coded list that would need modification

> If your company is a partner with Red Hat, coordinate these changes through
> your partner manager.

Solarflare has recently joined the IHV partner program.

I can take this issue via that channel if desired, but it seems we are near a solution of adding the "sfc" module to anaconda 
"loader2/module-info" (if that is agreeable with you)

Comment 6 Alexander Todorov 2011-08-23 15:10:50 UTC
Hi Robert,
I don't see such devices in our hardware database so you will have to test once we get Beta trees available.

Comment 7 Martin Gracik 2011-09-05 07:15:40 UTC
Fixed in anaconda-11.1.2.243-1

Comment 9 Jan Stodola 2012-01-19 13:16:23 UTC
sfc.ko module is present in initrd.img, vendor with ID 1924 is specified in pci.ids:

[jstodola@jstodola initrd]$ zcat initrd.img | cpio -id
30975 blocks
[jstodola@jstodola initrd]$ cd modules/
[jstodola@jstodola modules]$ zcat modules.cgz | cpio -id
65111 blocks
[jstodola@jstodola modules]$ cd 2.6.18-305.el5/x86_64/
[jstodola@jstodola x86_64]$ ls sfc.ko i2c-algo-bit.ko mdio.ko i2c-core.ko mtdpart.ko mtdcore.ko 
i2c-algo-bit.ko  i2c-core.ko  mdio.ko  mtdcore.ko  mtdpart.ko  sfc.ko
[jstodola@jstodola x86_64]$ cd ../..
[jstodola@jstodola modules]$ grep -A 4 1924 pci.ids
1924  Solarflare Communications
        0703  SFC4000 rev A net [Solarstorm]
        0710  SFC4000 rev B [Solarstorm]
        0803  SFC9020 [Solarstorm]
        0813  SFL9021 [Solarstorm]

This is initrd.img from RHEL-5.8 Snapshot 5, anaconda-11.1.2.250-1.

Setting Verified: SanityOnly

Comment 11 errata-xmlrpc 2012-02-21 05:38:14 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2012-0197.html