Skip to content

Add Linux 6.12.11-479 with *ice* driver and firmware symlink #3200

Merged
merged 5 commits into from
Jan 27, 2025

Conversation

pmenzel
Copy link
Collaborator

@pmenzel pmenzel commented Jan 24, 2025

Tested on lucy and sigusr2.

@pmenzel
Copy link
Collaborator Author

pmenzel commented Jan 24, 2025

For the record, performance data for the Dell PowerEdge R7625 with 2 * 32x AMD EPYC 9174F:

@lucy:~$ time BEE_TMP_TMPDIR=/dev/shm BEE_TMP_BUILDROOT=/dev/shm/bee-pmenzel BEE_MAKEFLAGS='-j135' fakeroot ./linux-6.12.11-479.bee -c
[…]
[BEE]  -> saving build environment..
[BEE] /src/mariux/beeroot/build-archives/linux-6.12.11-479.x86_64.beebuild.tar.bz2

[BEE] ===================================================================
[BEE] build summary:
[BEE]  
[BEE] download directory ${F}: /dev/shm/bee-pmenzel/linux/files
[BEE]   source directory ${S}: /dev/shm/bee-pmenzel/linux/linux-6.12.11-479/source
[BEE]    build directory ${B}: /dev/shm/bee-pmenzel/linux/linux-6.12.11-479/build
[BEE]    image directory ${D}: /dev/shm/bee-pmenzel/linux/linux-6.12.11-479/image
[BEE]  
[BEE]      bee-file: /src/mariux/beeroot/bee-files/linux-6.12.11-479.bee
[BEE]      pkg-file: /src/mariux/beeroot/packages/linux-6.12.11-479.x86_64.bee.tar.bz2
[BEE] build-archive: /src/mariux/beeroot/build-archives/linux-6.12.11-479.x86_64.beebuild.tar.bz2   
[BEE] ===================================================================


real    4m56.150s
user    64m13.704s
sys     10m39.115s

The configuration has the *ice* driver enabled as a module to support
the Ethernet Controller E810-XXV for SFP [8086:159b], assembled of the
Dell PowerEdge R7625:

    @lucy:~$ lspci -nn -k -s 64:
    64:00.0 Ethernet controller [0200]: Intel Corporation Ethernet Controller E810-XXV for SFP [8086:159b] (rev 02)
            Subsystem: Intel Corporation Ethernet 25G 2P E810-XXV Adapter [8086:0002]
    64:00.1 Ethernet controller [0200]: Intel Corporation Ethernet Controller E810-XXV for SFP [8086:159b] (rev 02)
            Subsystem: Intel Corporation Ethernet 25G 2P E810-XXV Adapter [8086:0002]

With the module

    /lib/modules/6.12.11.mx64.479/kernel/drivers/net/ethernet/intel/ice/ice.ko

the cards are detected:

    @lucy:~$ lspci -nn -k -s 64:
    64:00.0 Ethernet controller [0200]: Intel Corporation Ethernet Controller E810-XXV for SFP [8086:159b] (rev 02)
    	Subsystem: Intel Corporation Ethernet 25G 2P E810-XXV Adapter [8086:0002]
    	Kernel driver in use: ice
    	Kernel modules: ice
    64:00.1 Ethernet controller [0200]: Intel Corporation Ethernet Controller E810-XXV for SFP [8086:159b] (rev 02)
    	Subsystem: Intel Corporation Ethernet 25G 2P E810-XXV Adapter [8086:0002]
    	Kernel driver in use: ice
    	Kernel modules: ice
    @lucy:~$ dmesg | grep -e 'ice:' -e 'ice 0'
    [   15.341509] ice: Intel(R) Ethernet Connection E800 Series Linux Driver
    [   15.341514] ice: Copyright (c) 2018, Intel Corporation.
    [   15.586009] ice 0000:64:00.0: Direct firmware load for intel/ice/ddp/ice.pkg failed with error -2
    [   15.595493] ice 0000:64:00.0: The DDP package file was not found or could not be read. Entering Safe Mode
    [   15.605102] ice 0000:64:00.0: Fail during requesting FW: -2
    [   15.611582] ice 0000:64:00.0: not enough device MSI-X vectors. wanted = 66, available = 2
    [   15.619774] ice 0000:64:00.0: Reducing request to 1 MSI-X vectors for LAN traffic.
    [   15.688001] ice 0000:64:00.0: RDMA is not supported on this device
    [   15.981639] ice 0000:64:00.1: Direct firmware load for intel/ice/ddp/ice.pkg failed with error -2
    [   15.991138] ice 0000:64:00.1: The DDP package file was not found or could not be read. Entering Safe Mode
    [   16.000756] ice 0000:64:00.1: Fail during requesting FW: -2
    [   16.007192] ice 0000:64:00.1: not enough device MSI-X vectors. wanted = 66, available = 2
    [   16.015396] ice 0000:64:00.1: Reducing request to 1 MSI-X vectors for LAN traffic.
    [   16.101219] ice 0000:64:00.1: RDMA is not supported on this device
    [   17.655913] ice 0000:64:00.0 net02: renamed from eth2
    [   17.664870] ice 0000:64:00.1 net03: renamed from eth3
    [ 2720.297227] ice 0000:64:00.1 net03: NIC Link is up 10 Gbps Full Duplex, Requested FEC: NONE, Negotiated FEC: NONE, Autoneg Advertised: On, Autoneg Negotiated: False, Flow Control: None

The firmware issue is going to be fixed later.

Resolves: #3199
    [BEE] fetching https://github.molgen.mpg.de/mariux64/linux/archive/refs/tags/mariux-6.12.11-479.tar.gz
    --2025-01-24 13:24:02--  https://github.molgen.mpg.de/mariux64/linux/archive/refs/tags/mariux-6.12.11-479.tar.gz
    Resolving github.molgen.mpg.de... 141.14.220.169
    Connecting to github.molgen.mpg.de|141.14.220.169|:443... connected.
    HTTP request sent, awaiting response... 302 Found
    Location: https://github.molgen.mpg.de/_codeload/mariux64/linux/tar.gz/refs/tags/mariux-6.12.11-479 [following]
    --2025-01-24 13:24:02--  https://github.molgen.mpg.de/_codeload/mariux64/linux/tar.gz/refs/tags/mariux-6.12.11-479
    Reusing existing connection to github.molgen.mpg.de:443.
    HTTP request sent, awaiting response... 200 OK
    Length: 245031655 (234M) [application/x-gzip]
    Saving to: ‘/dev/shm/bee-pmenzel/linux/files/mariux-6.12.11-479.tar.gz.tmp’

    /dev/shm/bee-pmenzel/linu 100%[=====================================>] 233.68M   112MB/s    in 2.1s

    2025-01-24 13:24:05 (112 MB/s) - ‘/dev/shm/bee-pmenzel/linux/files/mariux-6.12.11-479.tar.gz.tmp’ saved [245031655/245031655]

    -rw-r--r-- 1 root root 245031655 Jan 24 13:24 /dev/shm/bee-pmenzel/linux/files/mariux-6.12.11-479.tar.gz.tmp
Linux 6.12.11 currently logs:

    $ dmesg --level alert,crit,err,warn -T
    [Fri Jan 24 15:55:01 2025] Spectre V2 : WARNING: Unprivileged eBPF is enabled with eIBRS on, data leaks possible via Spectre v2 BHB attacks!
    [Fri Jan 24 15:55:07 2025] Could not retrieve perf counters (-19)
    [Fri Jan 24 15:55:08 2025] amd_pstate: the _CPC object is not present in SBIOS or ACPI disabled
    [Fri Jan 24 15:55:08 2025] scsi 0:0:4:0: set ignore_delay_remove for handle(0x0012)
    [Fri Jan 24 15:55:14 2025] wmi_bus wmi_bus-PNP0C14:00: [Firmware Bug]: WQBC data block query control method not found
    [Fri Jan 24 15:55:15 2025] ice 0000:64:00.0: Direct firmware load for intel/ice/ddp/ice.pkg failed with error -2
    [Fri Jan 24 15:55:15 2025] ice 0000:64:00.0: The DDP package file was not found or could not be read. Entering Safe Mode
    [Fri Jan 24 15:55:15 2025] ice 0000:64:00.0: Fail during requesting FW: -2
    [Fri Jan 24 15:55:15 2025] ice 0000:64:00.0: not enough device MSI-X vectors. wanted = 66, available = 2
    [Fri Jan 24 15:55:15 2025] ice 0000:64:00.0: RDMA is not supported on this device
    [Fri Jan 24 15:55:15 2025] ice 0000:64:00.1: Direct firmware load for intel/ice/ddp/ice.pkg failed with error -2
    [Fri Jan 24 15:55:15 2025] ice 0000:64:00.1: The DDP package file was not found or could not be read. Entering Safe Mode
    [Fri Jan 24 15:55:15 2025] ice 0000:64:00.1: Fail during requesting FW: -2
    [Fri Jan 24 15:55:15 2025] ice 0000:64:00.1: not enough device MSI-X vectors. wanted = 66, available = 2
    [Fri Jan 24 15:55:15 2025] ice 0000:64:00.1: RDMA is not supported on this device

Create the symbolic link as described in [linux-firmware’s file
`WHENCE`][1]:

    Link: intel/ice/ddp/ice.pkg -> ice-1.3.30.0.pkg

Another [note from Intel’s (out-of-tree) driver repository][2]:

> When the driver loads, it looks for "intel/ice/ddp/ice.pkg" in the
> firmware root. If this file exists, the driver will download it into
> the device. If not, the driver will go into Safe Mode where it will
> use the configuration contained in the device's NVM. This is NOT a
> supported configuration and many advanced features will not be
> functional. See Dynamic Device Personalization later for more
> information.

With the file in place, the file is found and loaded:

    @lucy:~$ dmesg | grep -e 'ice:' -e 'ice 0'
    [   15.387151] ice: Intel(R) Ethernet Connection E800 Series Linux Driver
    [   15.393747] ice: Copyright (c) 2018, Intel Corporation.
    [   15.938213] ice 0000:64:00.0: The DDP package was successfully loaded: ICE OS Default Package version 1.3.30.0
    [   16.002318] ice 0000:64:00.0: 126.024 Gb/s available PCIe bandwidth (16.0 GT/s PCIe x8 link)
    [   16.044946] ice 0000:64:00.0: PTP init successful
    [   16.373684] ice 0000:64:00.1: DDP package already present on device: ICE OS Default Package version 1.3.30.0
    [   16.494252] ice 0000:64:00.1: 126.024 Gb/s available PCIe bandwidth (16.0 GT/s PCIe x8 link)
    [   16.536377] ice 0000:64:00.1: PTP init successful
    [   18.309869] ice 0000:64:00.0 net02: renamed from eth2
    [   18.319624] ice 0000:64:00.1 net03: renamed from eth3
    [   18.538539] ice 0000:64:00.1 net03: NIC Link is up 10 Gbps Full Duplex, Requested FEC: NONE, Negotiated FEC: NONE, Autoneg Advertised: On, Autoneg Negotiated: False, Flow Control: None

Increment revision number to 2.

[1]: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/WHENCE?id=789aa81504126c2b062d04aacea1570af950ad4f#n5860
[2]: https://github.com/intel/ethernet-linux-ice/blob/16ca173a04cea377e96ee27faa0d2ce4798fb456/README#L162-L182
@pmenzel pmenzel changed the title Add Linux 6.12.11-479 with *ice* driver Add Linux 6.12.11-479 with *ice* driver and firmware symlink Jan 27, 2025
@pmenzel pmenzel merged commit 04d4c77 into master Jan 27, 2025
Sign in to join this conversation on GitHub.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant