r8168 installation problems

Dec 30, 2020
6
0
1
40
Germany
Hi,

i ordered a HP EliteDesk 805 G6 SFF, Ryzen 7 PRO 4750G and i was not aware of the challenges with this device.

at this point i stuck with the onboard ethernetcard.

here is my stony path. Maybe it will help others...

1st Problem: The installation stops "No Broadcastdevice available" unsatisfactorily solved

i get this running with a usb network card, but i need it at work..

2nd Problem: install fails on "Starting a root shell on TTY3" solved

i get a prompt with "Starting a root shell on TTY3", after around one minute, i get a error message

you can continue the installation with the following steps

$ chmod 1777 /tmp
$ apt update
$ apt upgrade
$ Xorg -configure
$ mv /xorg.conf.new /etc/X11/xorg.conf

now change the card1 driver to "fbdev"

$ vim /etc/X11/xorg.conf

Section "Device"
Identifier "Card1"
Driver "fbdev"

start the installation gui


source of information: https://www.rpiathome.com/2020/10/21/proxmox-6-2-1-installation-fails-after-dhcp-lease-obtained/

3rd Problem: Back to the first, the network card

The board comes with a R8168 network card, which i doesnt get running.

root@pve1:~# lspci -nnk | grep -i net -A4
05:00.1 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 29)
Subsystem: Hewlett-Packard Company RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [103c:872b]
Kernel driver in use: r8168
Kernel modules: r8168


i try already this thread: https://forum.proxmox.com/threads/nutzung-realtek-rtl8111-8168-8411.66812/

here the tips:
* https://www.taste-of-it.de/debian-i...tek-rtl8111-rtl8168-erhaelt-keine-ip-adresse/

when i try to install firmware-realtek, it will remove pve

root@pve1:~# apt-get install firmware-realtek r8168-dkms
Reading package lists... Done
Building dependency tree
Reading state information... Done
r8168-dkms is already the newest version (8.048.03-1).
The following packages will be REMOVED:
proxmox-ve pve-firmware pve-kernel-5.4
The following NEW packages will be installed:
firmware-realtek
0 upgraded, 1 newly installed, 3 to remove and 0 not upgraded.
Need to get 0 B/505 kB of archives.
After this operation, 195 MB disk space will be freed.
Do you want to continue? [Y/n]

when i install only r8168-dkms, i fails


root@pve1:~# apt-get install r8168-dkms
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
r8168-dkms
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/97.7 kB of archives.
After this operation, 1,240 kB of additional disk space will be used.
Selecting previously unselected package r8168-dkms.
(Reading database ... 78394 files and directories currently installed.)
Preparing to unpack .../r8168-dkms_8.046.00-1_all.deb ...
Unpacking r8168-dkms (8.046.00-1) ...
Setting up r8168-dkms (8.046.00-1) ...
Loading new r8168-8.046.00 DKMS files...
Building for 5.4.78-2-pve
Building initial module for 5.4.78-2-pve
Error! Bad return status for module build on kernel: 5.4.78-2-pve (x86_64)
Consult /var/lib/dkms/r8168/8.046.00/build/make.log for more information.
dpkg: error processing package r8168-dkms (--configure):
installed r8168-dkms package post-installation script subprocess returned error exit status 10
Errors were encountered while processing:
r8168-dkms
E: Sub-process /usr/bin/dpkg returned an error code (1)
root@pve1:~#

root@pve1:~# cat /var/lib/dkms/r8168/8.046.00/build/make.log
DKMS make.log for r8168-8.046.00 for kernel 5.4.78-2-pve (x86_64)
Thu 31 Dec 2020 10:20:32 AM CET
make: Entering directory '/usr/src/linux-headers-5.4.78-2-pve'
AR /var/lib/dkms/r8168/8.046.00/build/built-in.a
CC [M] /var/lib/dkms/r8168/8.046.00/build/r8168_n.o
CC [M] /var/lib/dkms/r8168/8.046.00/build/r8168_asf.o
CC [M] /var/lib/dkms/r8168/8.046.00/build/rtl_eeprom.o
CC [M] /var/lib/dkms/r8168/8.046.00/build/rtltool.o
/var/lib/dkms/r8168/8.046.00/build/r8168_n.c:60:10: fatal error: linux/pci-aspm.h: No such file or directory
#include <linux/pci-aspm.h>
^~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [scripts/Makefile.build:275: /var/lib/dkms/r8168/8.046.00/build/r8168_n.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:1757: /var/lib/dkms/r8168/8.046.00/build] Error 2
make: Leaving directory '/usr/src/linux-headers-5.4.78-2-pve'
root@pve1:~#

but i installed build-essential and pve-headers

root@pve1:~# apt install pve-headers build-essential
Reading package lists... Done
Building dependency tree
Reading state information... Done
build-essential is already the newest version (12.6).
pve-headers is already the newest version (6.3-1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
root@pve1:~#

described in this thread, there is a "working" package in debian sid

https://forum.proxmox.com/threads/r...-dkms-8-046-00-to-old-for-kernel-5-3-x.63488/

this installation runs with no failure

root@pve1:~# apt install -t unstable r8168-dkms
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
r8168-dkms
0 upgraded, 1 newly installed, 0 to remove and 564 not upgraded.
Need to get 100 kB of archives.
After this operation, 1,389 kB of additional disk space will be used.
Get:1 http://http.us.debian.org/debian unstable/non-free amd64 r8168-dkms all 8.048.03-1 [100 kB]
Fetched 100 kB in 1s (149 kB/s)
Selecting previously unselected package r8168-dkms.
(Reading database ... 78394 files and directories currently installed.)
Preparing to unpack .../r8168-dkms_8.048.03-1_all.deb ...
Unpacking r8168-dkms (8.048.03-1) ...
Setting up r8168-dkms (8.048.03-1) ...
Loading new r8168-8.048.03 DKMS files...
Building for 5.4.78-2-pve
Building initial module for 5.4.78-2-pve
Done.

r8168.ko:
Running module version sanity check.
Error! Module version 8.048.03-NAPI for r8168.ko
is not newer than what is already found in kernel 5.4.78-2-pve (8.048.03-NAPI).
You may override by specifying --force.

depmod...

Backing up initrd.img-5.4.78-2-pve to /boot/initrd.img-5.4.78-2-pve.old-dkms
Making new initrd.img-5.4.78-2-pve
(If next boot fails, revert to initrd.img-5.4.78-2-pve.old-dkms image)
update-initramfs......

DKMS: install completed.
Processing triggers for initramfs-tools (0.133+deb10u1) ...
update-initramfs: Generating /boot/initrd.img-5.4.78-2-pve
Running hook script 'zz-pve-efiboot'..
Re-executing '/etc/kernel/postinst.d/zz-pve-efiboot' in new private mount namespace..
No /etc/kernel/pve-efiboot-uuids found, skipping ESP sync.
root@pve1:~#

now i am at a point, where i stuck

i try already the driver from realtek page, same result.

the interface is there, maybe i load the wrong driver, i dont know. here i need help.

starting with installed r8168-dkms package from sid, here some outputs

root@pve1:~# lspci -nnk | grep -i net -A4
05:00.1 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 29)
Subsystem: Hewlett-Packard Company RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [103c:872b]
Kernel driver in use: r8168
Kernel modules: r8168
07:00.0 Non-Volatile memory controller [0108]: Device [1e95:9100] (rev 03)
Subsystem: Silicon Motion, Inc. Device [126f:2263]
root@pve1:~# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether e8:d8:d1:cd:e7:f9 brd ff:ff:ff:ff:ff:ff
3: enx34298f900e23: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master vmbr0 state UP mode DEFAULT group default qlen 1000
link/ether 34:29:8f:90:0e:23 brd ff:ff:ff:ff:ff:ff
4: vmbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
link/ether 34:29:8f:90:0e:23 brd ff:ff:ff:ff:ff:ff
root@pve1:~# dhclient eno1
root@pve1:~# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether e8:d8:d1:cd:e7:f9 brd ff:ff:ff:ff:ff:ff
inet6 fe80::ead8:d1ff:fecd:e7f9/64 scope link
valid_lft forever preferred_lft forever
3: enx34298f900e23: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master vmbr0 state UP group default qlen 1000
link/ether 34:29:8f:90:0e:23 brd ff:ff:ff:ff:ff:ff
4: vmbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 34:29:8f:90:0e:23 brd ff:ff:ff:ff:ff:ff
inet 198.19.0.15/24 brd 198.19.0.255 scope global vmbr0
valid_lft forever preferred_lft forever
inet6 fe80::3629:8fff:fe90:e23/64 scope link
valid_lft forever preferred_lft forever
root@pve1:~# ip route
default via 198.19.0.1 dev vmbr0 onlink
198.19.0.0/24 dev vmbr0 proto kernel scope link src 198.19.0.15

with tcpdump i cant see a packet

at this point i doesnt have a valid subscription, so i used pve-no-subscription repo. is it solved in enterprise?

about your help I would be very happy

Thanks a lot
 
Last edited:
Regarding the installer: you can always install a plain Debian and the install PVE on top of it, see https://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_Buster

PVE 6.3 comes with the 5.4 kernel which contains the driver for your NIC already. You should not have to install a custom one.
What were the errors you got?
 
Hi mira,

thank you for your fast answer. For a clear situation, i order a subscription, reinstall proxmox from iso with the steps above.

the ethernet adapter is not there.

dmesg output is attached

Code:
root@pve:~# lspci -nnk | grep -i net -A4
05:00.1 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 29)
    Subsystem: Hewlett-Packard Company RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [103c:872b]
    Kernel modules: r8169
07:00.0 Non-Volatile memory controller [0108]: Device [1e95:9100] (rev 03)
    Subsystem: Silicon Motion, Inc. Device [126f:2263]
    Kernel driver in use: nvmeff
root@pve:~#
root@pve:~#
root@pve:~#
root@pve:~# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enx34298f900e23: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master vmbr0 state UP mode DEFAULT group default qlen 1000
    link/ether 34:29:8f:90:0e:23 brd ff:ff:ff:ff:ff:ff
3: vmbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    link/ether 34:29:8f:90:0e:23 brd ff:ff:ff:ff:ff:ff
root@pve:~#

so it looks like, that the driver is not loaded..
 

Attachments

  • dmesg-202012311400.txt
    76.2 KB · Views: 3
Looks like you're right and there is no support in the kernel yet:
Code:
[    2.192258] r8169 0000:05:00.1: unknown chip XID 54b

You could try the r8168-dkms package from Ubuntu 20.04 as PVE uses the same kernel.
 
Hi mira,

i installed pve-headers and dkms from repo and r8168-dkms_8.048.03-1_all.deb from ubuntu hirsute

root@pve:~# lsmod | grep r8
r8152 69632 0
mii 16384 2 usbnet,r8152
r8168 548864 0
root@pve:~# modinfo r8168
filename: /lib/modules/5.4.78-2-pve/updates/dkms/r8168.ko
version: 8.048.03-NAPI
license: GPL
description: RealTek RTL-8168 Gigabit Ethernet driver
author: Realtek and the Linux r8168 crew <netdev@vger.kernel.org>
srcversion: 8C9AD17EF5D0461FFEB9503
alias: pci:v00001186d00004300sv00001186sd00004B10bc*sc*i*
alias: pci:v000010ECd00002600sv*sd*bc*sc*i*
alias: pci:v000010ECd00002502sv*sd*bc*sc*i*
alias: pci:v000010ECd00008161sv*sd*bc*sc*i*
alias: pci:v000010ECd00008168sv*sd*bc*sc*i*
depends:
retpoline: Y
name: r8168
vermagic: 5.4.78-2-pve SMP mod_unload modversions
parm: speed_mode:force phy operation. Deprecated by ethtool (8). (uint)
parm: duplex_mode:force phy operation. Deprecated by ethtool (8). (uint)
parm: autoneg_mode:force phy operation. Deprecated by ethtool (8). (uint)
parm: advertising_mode:force phy operation. Deprecated by ethtool (8). (uint)
parm: aspm:Enable ASPM. (int)
parm: s5wol:Enable Shutdown Wake On Lan. (int)
parm: s5_keep_curr_mac:Enable Shutdown Keep Current MAC Address. (int)
parm: rx_copybreak:Copy breakpoint for copy-only-tiny-frames (int)
parm: use_dac:Enable PCI DAC. Unsafe on 32 bit PCI slot. (int)
parm: timer_count:Timer Interrupt Interval. (int)
parm: eee_enable:Enable Energy Efficient Ethernet. (int)
parm: hwoptimize:Enable HW optimization function. (ulong)
parm: s0_magic_packet:Enable S0 Magic Packet. (int)
parm: debug:Debug verbosity level (0=none, ..., 16=all) (int)
root@pve:~#
it looks like that the right module is in kernel
root@pve:~# brctl show vmbr0
bridge name bridge id STP enabled interfaces
vmbr0 8000.34298f900e23 no eno1
enx34298f900e23
i add the interface to the vmbr0, but i still get no packet over the interface

any other ideas?
 

Attachments

  • dmesg-202101041640.txt
    83.8 KB · Views: 6
Thanks for this. I was doing a new install on an ASUS Zenith II Extreme Alpha chock loaded with hardware and wasn't looking forward to trying to eliminate things one by one. This method got me through install and booting with minimal effort. Thanks!
 
Hey @mira is it possible for you to vend that r8168-dkms package in the Proxmox software source (bonus if it can get put into the install disk)?

At least until that driver is supported in the kernel?

There's something like ten years worth of "how to get r8168 working on Proxmox/Debian/other-distros" articles and blog posts out there, most of which are many years out of date. It makes this a pretty difficult problem to search for the correct solution to.
 
Last edited:
Hello, sorry for the necroposting but did somebody have any progress on this?
I have a server with this exact NIC and i'm forced to use a USB adapter because the inbuilt one uses the infamous r8168 chipset.

I installed from Debian Buster and if i use that kernel the builtin nic works, is there a way to use that kernel perhaps?

I've tried to compile and install the official driver on pve kernel, and the card is detected and available for usage, but when i try to actually ping a host i have 100% packet loss until after some time this weird things starts happening:

photo_2021-04-12_10-54-19.jpg
 
Today I tried to install one of our new servers which does not let me install Proxmox with the same "No Broadcastdevice available" message. In the console I see the message:
r8169 0000:02:00.0: unknown chip XID 641
Is there any way to inject a driver during installation? Or is there a rough timeframe for support of this chip?
Best regards!
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!