Trying to get my 10GbE ports working on Unraid

UPDATE – I posted on the Unraid forum:


This might be a dumb question, but it seems like I might be out of luck to get the 10GbE ports on my NAS working.

Some context for this:

uname -r
6.12.54-Unraid

uname -m
x86_64 OS

OS Version = 7.2.3

Unraid is installed on a Lockerstore 8 Gen 3. Here are the specs on that:

  • Quad-Core AMD Ryzen Embedded V3C14 CPU @ 2.3 GHz - 3.8 GHz
  • 16GB of server-grade DDR5-4800 ECC memory (Max 64GB)
  • Quad M.2 slots for NVMe SSDs
  • PCIe 4.0 2x USB4 ports at 40 Gbps
  • 3x USB 3.2 Gen 2 Type-A at 10 Gbps
  • 2x 10-Gigabit Ethernet
  • 2x 5-Gigabit Ethernet Supports Wake on LAN and Wake on WAN (5 GbE)

It has this problematic Ethernet controller:

e8:00.2 Ethernet controller [0200]: Advanced Micro Devices, Inc. [AMD] XGMAC 10GbE Controller [1022:1458]
e8:00.3 Ethernet controller [0200]: Advanced Micro Devices, Inc. [AMD] XGMAC 10GbE Controller [1022:1458]

It would seem my Realtek 5GbE drivers are working as expected, but the amd-xgbe drivers are not installed as shown here:

lspci -nnk | grep -i ethernet -A 3

01:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8126 5GbE Controller [10ec:8126] (rev 01)
Subsystem: Realtek Semiconductor Co., Ltd. Device [10ec:0123]
Kernel driver in use: r8126
Kernel modules: r8169, r8126

02:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8126 5GbE Controller [10ec:8126] (rev 01)
Subsystem: Realtek Semiconductor Co., Ltd. Device [10ec:0123]
Kernel driver in use: r8126
Kernel modules: r8169, r8126

e8:00.2 Ethernet controller [0200]: Advanced Micro Devices, Inc. [AMD] XGMAC 10GbE Controller [1022:1458]
Subsystem: Advanced Micro Devices, Inc. [AMD] XGMAC 10GbE Controller [1022:1458]
Kernel driver in use: vfio-pci
Kernel modules: amd_xgbe

e8:00.3 Ethernet controller [0200]: Advanced Micro Devices, Inc. [AMD] XGMAC 10GbE Controller [1022:1458]
Subsystem: Advanced Micro Devices, Inc. [AMD] XGMAC 10GbE Controller [1022:1458]
Kernel modules: amd_xgbe
modinfo amd-xgbe modinfo: ERROR: Module amd-xgbe not found.

lsmod | grep amd-xgbe -- returns nothing

dmesg | grep xgbe -- returns nothing

I’m not sure why 1 of the XGMAC lines reports: Kernel driver in use: vfio-pci Because it certainly is not acting like it has a driver.

I found this strange because from my google-fu it appears that the amd-xgbe drivers are native in the newer linux kernels, but not Unraid, it seems?

There is a whole Reddit post for fixing this problem for TrueNAS users: https://www.reddit.com/r/asustor/comments/1h9zvs9/flashstor_gen_2_fs6812xfs6806x_getting_the_amd/ Asustor replied to the original post with this link: Ryzen Embedded V3000 Series Drivers and Downloads | Latest Version

The original poster ended up commenting back to the Asustor people, saying: “TrueNAS is confirmed working fine as well, it’s possible to compile the module in a VM and just copy over the amd-xgbe.ko file to make it work.”

^^^ maybe I am just too low-brain to do this, but I could not get it to work. I tried using ich777’s repository here: Release 6.12.54-Unraid · ich777/unraid_kernel · GitHub and running that through chatgpt for instructions… did not make the supposed amd-xgbe.ko file I need for drivers.

If anyone knows what I should do or if I’m sol just lmk :slight_smile:

This means that you take the tar.xz archive, decompress it and add the amd-xgbe kernel object to the store of kernel modules under /lib/modules/ – here it should be /lib/modules/6.12.54-Unraid/kernel/drivers/net/ethernet/amd/xgbe/amd-xgbe.ko.xz.

Which one?

Idk if I’m missing something, but the .ko file is not in the ich777 tar.xz pre-compiled Unraid kernel, and I can’t use the standard 6.12.54 kernel because it has to be -Unraid in its version#.

Here’s a failed attempt at me generating the .ko file because it’s 6.12.54 SMP instead of -Unraid.

I feel too low brain for this XD so if you know the answer please let me know in crayon writing terms what steps I need to take LOL

I think you’re doing great, attempting a rebuild to copy the kernel module in is sharp. I’m offering a ‘this makes sense to me – but from a long way away’, I’m more familiar with bodging together code to get a kernel to compile than the specifics of Unraid vs your Lockerstore device.

I don’t think I have suggestions for a simple fix. I would try using the ich777 unraid kernel’s docker container to pull and build the ko because it will either match your uname version exactly or fail to build.

You can get the Dockerfile and helper scripts wth git clone https://github.com/ich777/unraid_kernel.git and then … oh no, docker build . is broken for me and that’s not a help right now.

I’ll update this if I get it to build a kernel and modules for Unraid, but until then (1) it’s not you; (2) no news is sad news.

K3n.

The vermagic comes from the CONFIG_LOCALVERSION item in the .config file, it can be set in make menuconfig at ‘General Setup’ → ‘Local version’, then a fresh make then make modules.

Some progress!

https://forums.unraid.net/topic/196906-amd-xgbeko-file-for-the-10gbe-ports-on-my-asustor-8-gen-3-nas/#comment-1606327

The admin guy said he’d ask that the drivers be included in Unraid 7.3

Woo! We can only hope.

1 Like