From Fedora Project Wiki
Fedora Test Days
Echo-testing-48px.png
Network Device Naming With Biosdevname

Date Thursday, January 27, 2011
Time all day

Website QA/Fedora_15_test_days
IRC #fedora-test-day (webirc)
Mailing list test


Note.png
Can't make the date?
If you come to this page before or after the test day is completed, your testing is still valuable, and you can use the information on this page to test, file any bugs you find at Bugzilla, and add your results to the results section. If this page is more than a month old when you arrive here, please check the current schedule and see if a similar but more recent Test Day is planned or has already happened.

What to test?

Today's installment of Fedora Test Day will focus on Network Interface Naming in Fedora Rawhide

Traditionally network interfaces in Linux are named ethN. With multiple network adapters, both onboard and add-in, single and multiport, in modern Server platforms, the naming of these interfaces is non-deterministic. Specifically, 'eth0 does not always map to Gb1 or 'Embedded NIC 1' as named on the server chassis. This makes the existing naming not very user friendly for administration.

This issue is addressed by assigning names to network interfaces based on their physical location on the system board. Biosdevname, which is a Dell developed utility, can suggest names to network interfaces, which are physical location based.

Naming convention followed is:

  • Embedded devices: em<port>
  • Add-in PCI cards: pci<slot>#<port>_<virtual-function-instance>

Please refer to the following link for more details on the issue itself and various solutions we proposed upstream to address this issue which were unsuccessful.

Who's available

The following cast of characters will be available testing, workarounds, bug fixes, and general discussion ...

Prerequisite for Test Day

Hardware Requirements
  1. Computer system (Servers/Laptops/Desktops) with onboard(Lan-On-Motherboard) network adapters and/or add-in network adapters.
  2. Single and multiport add-in network adapters with SRIOV capability
  3. It is strongly advised that your hardware profile uploaded to Smolt according to these instructions
Firmware/BIOS requirements
  1. System firmware/BIOS should implement SMBIOS type 41 record which defines a device type instance and string for onboard devices (network adapters included)or $PIRQ Table(PCI Irq Routing Table).
  2. System firmware/BIOS should implement SMBIOS type 9 record or implement $PIRQ Table(PCI Irq Routing Table).
Software Requirements
  1. Fedora Rawhide.
  2. Optional - the SMBIOS type 41 device type instance and string be available in sysfs. This will be available in sysfs only when BIOS implements type 41. If type 41 is not implemented, then $PIRQ will be the fallback and this attribute will not be available in sysfs. This attribute is available on kernels with version >= 2.6.36 (includes Rawhide).

A script is available to determine whether your system will be impacted by the Package-x-generic-16.pngbiosdevname change. The following example shows how to run the script to determine whether your hardware can be used during the test day.

# su -c 'curl -s https://fedoraproject.org/w/uploads/3/38/Biosdevname-support-check.sh | bash' 
Password: 
Checking hardware requirements                             [  OK  ]
Checking for SMBIOS type 41 support                        [  OK  ]
Checking for SMBIOS type 9 support                         [  OK  ]
Checking for PCI Interrupt Routing support                 [  OK  ]

If the output of Hardware Requirements check is [ OK ] and any of the following checks is [ OK ], this feature can be tested on such a system/hardware.

How to test?

At a high level, the testing will focus on

  1. Network interface names during install time
  2. Network interface names after installation is completed (after you login for first time)
  3. Required changes available in ifcfg-ethN config files
  4. Upgrading from a previous update (Say Fedora 14) to Fedora Rawhide does not affect the naming scheme that existed in the previous update (Say Fedora 14).

Update your machine / Available Rawhide Installation Methods

There are several ways to set up your test system.

Upgrading From Fedora 14 to Rawhide
You can upgrade an already installed Fedora 14 system using yum - for guidance, see yum update from previous release
Install Rawhide
  1. Install Rawhide with Fedora 14 ISO media - for guidance, see Install Rawhide using Fedora 14 ISO
  2. Use a special Rawhide install image provided for this test day - i386 or x86_64 boot.iso. For guidance, see the installation guide
Boot into a Rawhide Live Image
Download and boot a Fedora Rawhide live image -- for guidance, see How_to_create_and_use_Live_USB

Test Cases

Upgrade Testing - These test cases should be executed when upgrading a Fedora 14 system to Rawhide. Please refer to the section Upgrading From Fedora 14 to Today's Rawhide above.

Install Time Testing - The test cases in this category need to be executed when installation of Rawhide is in progress. Please refer to the section Install Today's Rawhide above.

Run Time Testing - The test cases in this category need to be executed when you are booted into Fedora Live Image. Please refer to the section Boot into a Rawhide Live Image above to download a Fedora Rawhide Live Image.

Test Results

Construct a table or list to allow testers to post results. Each column should be a test case or configuration, and each row should consist of test results. Include some instructions on how to report bugs, and any special instructions. Here's an example, from a Palimpsest test day:

If you have problems with any of the tests, report a bug to Bugzilla usually for the component udisks, or gnome-disk-utility for bugs in the Palimpsest graphical front end itself. If you are unsure about exactly how to file the report or what other information to include, just ask on IRC and we will help you. Once you have completed the tests, add your results to the Results table below, following the example results from the first line as a template. The first column should be your name with a link to your User page in the Wiki if you have one, and the second should be a link to the Smolt profile of the system you tested. For each test case, if your system worked correctly, simply enter the word PASS. If you had trouble, enter the word FAIL, with a footnote indicator, and put a link to the bug report in the References column (as in the example line). For tests you could not perform, enter a dash.

User Smolt Profile install upgrade kickstart on-board add-in SRIOV iface configuration References
Sample User HW
Pass pass
Inprogress inprogress
none
Pass pass
Warning warn
[1]
Fail fail
[2]
  1. Test pass, but also encountered RHBZ #54321
  2. RHBZ #12345