Kernel 5.11

G2R

New Member
Feb 5, 2021
1
0
1
56
We just uploaded a 5.11 kernel into our pvetest repository. The 5.4 kernel is still the default on Proxmox VE 6.x series, 5.11 is an option.

How to install:
  • enable the pvetest repository (pvetest is not recommended for production setups)
  • apt install pve-kernel-5.11
  • reboot
Feedback is welcome!
Hello Marin,

Will there be a new install ISO image with the new kernel backed in?

cheers Conny
 

Ramalama

Active Member
Dec 26, 2020
356
55
28
33
Hi guys, if someone want's to build the Kernel yourself, i made a small 08/15 Helper Script.

You can get it from here: (kernel-update.sh)
https://cloud.golima.de/s/E7KiWLFgzSp4MNP

Or here as Code:
Bash:
#!/bin/bash
#
# Config:
#
# Check Building dependencies? 1=yes / 0=no
# - This is a check only, nothing will get installed by this script!
KUPD_CHECK_DEPENDENCIES=1
KUPD_BUILD_DEPENDENCIES=(gcc devscripts asciidoc-base automake bc bison cpio dh-python flex git kmod libdw-dev libelf-dev libiberty-dev libnuma-dev libpve-common-perl libslang2-dev libssl-dev libtool lintian lz4 perl-modules python2-minimal rsync sed sphinx-common tar xmlto zlib1g-dev dwarves systemtap-sdt-dev libunwind-dev libzstd-dev libcap-dev libbabeltrace-dev libpython3.9-dev libperl-dev binutils-dev)
#
# Update to another Kernel as PVE provides? 1=yes / 0=no
# - If you don't need a Branch, leave empty: KUPD_KERNEL_BRANCH=""
KUPD_REPLACE_KREPO=1
KUPD_KERNEL_REPO="git://kernel.ubuntu.com/ubuntu/ubuntu-hirsute.git"
KUPD_KERNEL_BRANCH="master-next"
#
KUPD_PVE_REPO="git://git.proxmox.com/git/pve-kernel.git"
#
# Do you want to define Cflags & Compiler? PVE_BUILD_CFLAGS & PVE_BUILD_CC
# - If you don't enable this, making with PVE_BUILD_CFLAGS & PVE_BUILD_CC wont make any effect.
KUPD_ENABLE_BUILD_FLAGS=1
#
# Changelog:
# Version 1.1: Added Build Flags, forgot about those before.
#
# --- Script Section, do not modify ----
C_RED='\e[0;31m'
C_GREEN='\e[0;32m'
C_NC='\e[0m'
git clone $KUPD_PVE_REPO
cd pve-kernel
if [ "$KUPD_REPLACE_KREPO" -eq "1" ]; then
    git submodule set-url submodules/ubuntu-hirsute $KUPD_KERNEL_REPO
    if [ ! -z "$KUPD_KERNEL_BRANCH" ]; then
        git submodule set-branch --branch $KUPD_KERNEL_BRANCH submodules/ubuntu-hirsute
    fi
    echo -e "${C_GREEN}INFO:${C_NC} Using Custom Kernel Repository!"
fi
make submodule
if [ "$KUPD_REPLACE_KREPO" -eq "1" ]; then
    git submodule update --recursive --remote
    KUPD_PLVL_AKRN=$(grep ^SUBLEVEL submodules/ubuntu-hirsute/Makefile)
    KUPD_PLVL_AREP=$(grep ^KERNEL_PATCHLEVEL Makefile)
    KUPD_PLVL_VKRN=$(echo $KUPD_PLVL_AKRN | cut -d = -f 2 | xargs)
    KUPD_PLVL_VREP=$(echo $KUPD_PLVL_AREP | cut -d = -f 2 | xargs)
    KUPD_PLVL_NKRN=$(echo $KUPD_PLVL_AKRN | cut -d = -f 1 | xargs)
    KUPD_PLVL_NREP=$(echo $KUPD_PLVL_AREP | cut -d = -f 1 | xargs)
    KUPD_PLVL_RKRN="$KUPD_PLVL_NREP=$KUPD_PLVL_VKRN"
    if [ "$KUPD_PLVL_VREP" != "$KUPD_PLVL_VKRN" ]; then
        sed -i "s/^$KUPD_PLVL_AREP/$KUPD_PLVL_RKRN/" Makefile
        echo -e "${C_GREEN}INFO:${C_NC} Makefile updated to 5.11.${C_GREEN}$KUPD_PLVL_VKRN${C_NC}"
    fi
fi

KUPD_B_CHECK() {
    return $(dpkg-query -W -f '${Status}\n' "${1}" 2>&1|awk '/ok installed/{print 0;exit}{print 1}')
}
if [ "$KUPD_CHECK_DEPENDENCIES" -eq "1" ]; then
    KUPD_BUILD_M=""
    for KUPD_PKG in ${KUPD_BUILD_DEPENDENCIES[@]}; do
        if ! $(KUPD_B_CHECK $KUPD_PKG) ; then
            KUPD_BUILD_M+=" $KUPD_PKG"
        fi
    done
    if [[ ${KUPD_BUILD_M} != *"dwarves"* ]]; then
        KUPD_DRWAVES_C="$(dpkg-query -W -f="\${Version}\n" dwarves 2>/dev/null)"
        if [ "$(printf '%s\n' "1.16" "$KUPD_DRWAVES_C" | sort -V | head -n1)" = "1.16" ]; then
            echo -e "${C_GREEN}INFO:${C_NC} dwarves >= 1.16.0, good!"
        else
            echo -e "${C_RED}WARNING:${C_NC} Please update dwarves >= 1.16.0"
        fi
    fi
    if [ ! -z "$KUPD_BUILD_M" ]; then
        echo -e "${C_RED}WARNING:${C_NC} Missing$KUPD_BUILD_M"
        echo -e "${C_RED}WARNING:${C_NC} Build will probably fail!"
    fi
fi

if [ "$KUPD_ENABLE_BUILD_FLAGS" -eq "1" ]; then
#    Add default Compiler if nothing is set:
    sed -i '/^PVE_CONFIG_OPTS=.*/i PVE_BUILD_CC ?= \${CC}\n' debian/rules
#    Add Flags to .config_mark:
    sed -i "s/\${MAKE} -C \${KERNEL_SRC} oldconfig/\${MAKE} -C \${KERNEL_SRC} CC=\${PVE_BUILD_CC} oldconfig/" debian/rules
#    Add Flags to .compile_mark:
    sed -i "s/\${MAKE} -C \${KERNEL_SRC} KBUILD_BUILD_VERSION_TIMESTAMP=\"PVE \${DEB_VERSION} (\${CHANGELOG_DATE})\"/\${MAKE} -C \${KERNEL_SRC} CC=\${PVE_BUILD_CC} KCFLAGS=\"\${PVE_BUILD_CFLAGS}\" KBUILD_BUILD_VERSION_TIMESTAMP=\"PVE \${DEB_VERSION} (\${CHANGELOG_DATE})\"/" debian/rules
    echo -e "${C_GREEN}INFO:${C_NC} Added build Flag options to debian/rules"
fi

echo ""
echo -e "${C_GREEN}DONE:${C_NC} You can build the Kernel with:"
echo -e "${C_GREEN}NOTE:${C_NC} make PVE_BUILD_CC=gcc-11 PVE_BUILD_CFLAGS=\"-O3 -march=znver3\""
echo -e "${C_GREEN}NOTE:${C_NC} PVE_BUILD_CC and PVE_BUILD_CFLAGS are optional."
echo -e "${C_GREEN}NOTE:${C_NC} For -march please read: https://gcc.gnu.org/onlinedocs/gcc/x86-Options.html"

It's mostly self explanatory, i will try to update it with time!

Note: Please take care, that the "build" dependencies are mostly Debian related, but Ubuntus package names should be the same.
This script won't work with RHEL or Arch based Distros! Only with apt based distros like debian/ubuntu/mint/etc.

Cheers xD

EDIT:
v1.1: Added Build Flags, PVE_BUILD_CC and PVE_BUILD_CFLAGS are now functional, sorry xD
 
Last edited:
  • Like
Reactions: Dunuin

comfreak

Member
May 20, 2020
45
10
13
33
Actually, you could just install the newer version from Debian buster-backports, btrfs-progs 5.10.1-1~bpo10+1 is currently available from there.
btrfs-progs does feature checking for kernel support, so they do not need to explicitly match, or better said, nothing should break if they do not match 1:1 - https://btrfs.wiki.kernel.org/index...rfs-progs_at_the_same_version_as_my_kernel.3F
Thank you that worked.

For anyone who is interested:

1) add
Code:
deb http://deb.debian.org/debian buster-backports main
to
Code:
/etc/apt/sources.list
2)
Code:
apt update
3)
Code:
apt install -t buster-backports btrfs-progs
 
Sep 8, 2019
28
4
8
32
We just uploaded a 5.11 kernel into our pvetest repository. The 5.4 kernel is still the default on Proxmox VE 6.x series, 5.11 is an option.

How to install:
  • enable the pvetest repository (pvetest is not recommended for production setups)
  • apt install pve-kernel-5.11
  • reboot
Feedback is welcome!

Enabling pvetest repo is not needed anymore. I am using the default deb https://enterprise.proxmox.com/debian/pve buster pve-enterprise and just installed it via apt-get install pve-kernel-5.11

Awesome: Ryzen 5000 CPU temperature monitoring is working now with Proxmox!

Bash:
~# uname -r
5.11.7-1-pve

~# sensors
...
k10temp-pci-00c3
Adapter: PCI adapter
Tctl:         +63.0°C
Tdie:         +63.0°C
 

leesteken

Famous Member
May 31, 2020
2,354
502
118
Unfortunately, the kernel-headers for 5.11-pve appear to not be available in the subscription repository, which is a problem for vendor-reset and dkms.
EDIT1: Nevermind, it is just not automatically installed (by pve-kernel-5.11 and/or pve-headers) but it is available as pve-headers-5.11.7-1-pve.
EDIT2: I seem to run into issue 26 of vendor-reset with 5.11. Are the following kernel options still set to y in 5.11.7-1-pve:
CONFIG_KALLSYMS CONFIG_KALLSYMS_ALL CONFIG_KALLSYMS_ABSOLUTE_PERCPU CONFIG_KALLSYMS_BASE_RELATIVE CONFIG_KPROBES CONFIG_PCI_QUIRKS CONFIG_FTRACE?
 
Last edited:

t.lamprecht

Proxmox Staff Member
Staff member
Jul 28, 2015
5,501
1,752
164
South Tyrol/Italy
shop.proxmox.com
Unfortunately, the kernel-headers for 5.11-pve appear to not be available in the subscription repository, which is a problem for vendor-reset and dkms.
EDIT1: Nevermind, it is just not automatically installed (by pve-kernel-5.11 and/or pve-headers) but it is available as pve-headers-5.11.7-1-pve.
Headers were never automatically installed, the pve-headers packages still points at pve-headers-5.4 as that is still the default kernel.
There's as always also the respective meta package to get the latest headers of a major release automatically: apt install pve-headers-5.11 - available on all repositories.

Are the following kernel options still set to y in 5.11.7-1-pve:
CONFIG_KALLSYMS CONFIG_KALLSYMS_ALL CONFIG_KALLSYMS_ABSOLUTE_PERCPU CONFIG_KALLSYMS_BASE_RELATIVE CONFIG_KPROBES CONFIG_PCI_QUIRKS CONFIG_FTRACE?
You can check the used config in /boot/config-5.11.7-1-pve.

Bash:
$ grep -P 'CONFIG_(KALLSYMS|KPROBES|PCI_QUIRKS|FTRACE)' /boot/config-5.11.7-1-pve 
CONFIG_KALLSYMS=y
CONFIG_KALLSYMS_ALL=y
CONFIG_KALLSYMS_ABSOLUTE_PERCPU=y
CONFIG_KALLSYMS_BASE_RELATIVE=y
CONFIG_KPROBES=y
CONFIG_KPROBES_ON_FTRACE=y
CONFIG_PCI_QUIRKS=y
CONFIG_FTRACE=y
CONFIG_FTRACE_SYSCALLS=y
CONFIG_FTRACE_MCOUNT_RECORD=y
# CONFIG_FTRACE_RECORD_RECURSION is not set
# CONFIG_FTRACE_STARTUP_TEST is not set
# CONFIG_KPROBES_SANITY_TEST is not set
 

leesteken

Famous Member
May 31, 2020
2,354
502
118
You can check the used config in /boot/config-5.11.7-1-pve.
Thank you for showing me how to install and check all this. The Proxmox kernel 5.11.7-1-pve does support all required kernel config flags, but the master-branch of vendor-reset that should support 5.11 still fails with The dkms.conf for this module includes a BUILD_EXCLUSIVE directive which does not match this kernel/arch. . This is unfortunate but probably not the fault of the Proxmox kernel.
 

t.lamprecht

Proxmox Staff Member
Staff member
Jul 28, 2015
5,501
1,752
164
South Tyrol/Italy
shop.proxmox.com
Hmm weird, their dkms.conf in the repo does not have a BUILD_EXCLUSIVE entry, and git log mentions fixing build for 5.11 already.

Can you check the following commands:
Bash:
dkms status
grep -r BUILD_EXCLUSIVE_KERNEL /usr/src/

My dkms knowledge is a bit rusty at the moment, but maybe it gets pinned locally, and you can just drop that pinning (the line with the BUILD_EXCLUSIVE) from the respective local dkms.conf file.
 

leesteken

Famous Member
May 31, 2020
2,354
502
118
Can you check the following commands:
Bash:
dkms status
vendor-reset, 0.1.1, 5.4.106-1-pve, x86_64: installed (WARNING! Diff between built and installed module!) wireguard, 1.0.20210219, 4.19.0-16-amd64, x86_64: installed (WARNING! Diff between built and installed module!) wireguard, 1.0.20210219, 5.4.106-1-pve, x86_64: installed
Bash:
grep -r BUILD_EXCLUSIVE_KERNEL /usr/src/
/usr/src/wireguard-1.0.20210219/dkms.conf: BUILD_EXCLUSIVE_KERNEL="^((5\.[0-4]($|[.-]))|(4\.)|(3\.1[0-9]))" /usr/src/wireguard-1.0.20210219/dkms.conf: BUILD_EXCLUSIVE_KERNEL="^((5\.[0-5]($|[.-]))|(4\.)|(3\.1[0-9]))"
grep -R 'BUILD_EXCLUSIVE' does not show anything in the local vendor-reset directory.
 

t.lamprecht

Proxmox Staff Member
Staff member
Jul 28, 2015
5,501
1,752
164
South Tyrol/Italy
shop.proxmox.com
grep -R 'BUILD_EXCLUSIVE' does not show anything in the local vendor-reset directory.
But dkms can fail too due to other modules not building, you'd need to disable/temporary-remove the wireguard ones (which is already built and shipped as module by the 5.11 kernel)
 

leesteken

Famous Member
May 31, 2020
2,354
502
118
But dkms can fail too due to other modules not building, you'd need to disable/temporary-remove the wireguard ones (which is already built and shipped as module by the 5.11 kernel)
Thanks for your help but after removing wireguard-dkms, I could not get vendor-reset to build and had some problems switching back to 5.4. I'll try all this in a VM with a fresh Proxmox 6, install 5.11 and then try vendor-reset to see if it is a problem with my setup or some kind of incompatibility.

EDIT: vendor-reset does not build with a freshly installed and dist-upgraded Proxmox 6.3 and kernel+headers 5.11.7-1-pve.
Bash:
make -C /lib/modules/5.11.7-1-pve/build M=/var/lib/dkms/vendor-reset/0.1.1/build modules
...
  LD [M]  /var/lib/dkms/vendor-reset/0.1.1/build/vendor-reset.o
  MODPOST /var/lib/dkms/vendor-reset/0.1.1/build/Module.symvers
make[3]: *** No rule to make target 'scripts/module.lds', needed by '/var/lib/dkms/vendor-reset/0.1.1/build/vendor-reset.ko'.  Stop.
make[3]: *** Waiting for unfinished jobs....
  CC [M]  /var/lib/dkms/vendor-reset/0.1.1/build/vendor-reset.mod.o
make[2]: *** [scripts/Makefile.modpost:117: __modpost] Error 2
make[1]: *** [Makefile:1738: modules] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.11.7-1-pve'
make: *** [Makefile:8: build] Error 2
Possibly related to a Debian bug 975571 or a new feature since 5.10 and vendor-reset needs to adapt or should Proxmox fix it like pve-edge-kernel #48?
 
Last edited:

Dark26

Active Member
Nov 27, 2017
233
17
38
45
Code:
root@p1:~/realtek2.5g/r8152-2.14.0# make
make -C /lib/modules/5.11.7-1-pve/build M=/root/realtek2.5g/r8152-2.14.0 modules
make[1] : on entre dans le répertoire « /usr/src/linux-headers-5.11.7-1-pve »
  CC [M]  /root/realtek2.5g/r8152-2.14.0/r8152.o
  MODPOST /root/realtek2.5g/r8152-2.14.0/Module.symvers
  CC [M]  /root/realtek2.5g/r8152-2.14.0/r8152.mod.o
make[3]: ***  Aucune règle pour fabriquer la cible « scripts/module.lds », nécessaire pour « /root/realtek2.5g/r8152-2.14.0/r8152.ko ». Arrêt.
make[2]: *** [scripts/Makefile.modpost:117: __modpost] Error 2
make[1]: *** [Makefile:1738: modules] Error 2
make[1] : on quitte le répertoire « /usr/src/linux-headers-5.11.7-1-pve »
make: *** [Makefile:24: modules] Error 2
root@p1:~/realtek2.5g/r8152-2.14.0#

I have problem to compile the realtek driver r8152
 

notnulled

Member
Jan 31, 2015
11
1
23
Chile
www.dmtinc.cl
Same problem trying to compile the last version ixgbe driver

Code:
root@pxzen:/usr/src/ixgbe-5.11.3# cat /var/lib/dkms/ixgbe/5.11.3/build/make.log
DKMS make.log for ixgbe-5.11.3 for kernel 5.11.7-1-pve (x86_64)
Thu 22 Apr 2021 09:26:39 AM -04
make: Entering directory '/var/lib/dkms/ixgbe/5.11.3/build/src'
make[1]: Entering directory '/usr/src/linux-headers-5.11.7-1-pve'
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_main.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_api.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_common.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_dcb.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_dcb_82598.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_dcb_82599.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_ethtool.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_lib.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_mbx.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_sriov.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_param.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_phy.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_procfs.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_xsk.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_82598.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_82599.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_x540.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_x550.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_dcb_nl.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_debugfs.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_fcoe.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_ptp.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_sysfs.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/kcompat.o
  LD [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe.o
  MODPOST /var/lib/dkms/ixgbe/5.11.3/build/src/Module.symvers
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe.mod.o
make[3]: *** No rule to make target 'scripts/module.lds', needed by '/var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe.ko'.  Stop.
make[2]: *** [scripts/Makefile.modpost:117: __modpost] Error 2
make[1]: *** [Makefile:1738: modules] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.11.7-1-pve'
make: *** [Makefile:99: default] Error 2
make: Leaving directory '/var/lib/dkms/ixgbe/5.11.3/build/src'
 

Ramalama

Active Member
Dec 26, 2020
356
55
28
33
Same problem trying to compile the last version ixgbe driver

Code:
root@pxzen:/usr/src/ixgbe-5.11.3# cat /var/lib/dkms/ixgbe/5.11.3/build/make.log
DKMS make.log for ixgbe-5.11.3 for kernel 5.11.7-1-pve (x86_64)
Thu 22 Apr 2021 09:26:39 AM -04
make: Entering directory '/var/lib/dkms/ixgbe/5.11.3/build/src'
make[1]: Entering directory '/usr/src/linux-headers-5.11.7-1-pve'
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_main.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_api.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_common.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_dcb.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_dcb_82598.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_dcb_82599.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_ethtool.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_lib.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_mbx.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_sriov.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_param.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_phy.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_procfs.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_xsk.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_82598.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_82599.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_x540.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_x550.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_dcb_nl.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_debugfs.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_fcoe.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_ptp.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe_sysfs.o
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/kcompat.o
  LD [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe.o
  MODPOST /var/lib/dkms/ixgbe/5.11.3/build/src/Module.symvers
  CC [M]  /var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe.mod.o
make[3]: *** No rule to make target 'scripts/module.lds', needed by '/var/lib/dkms/ixgbe/5.11.3/build/src/ixgbe.ko'.  Stop.
make[2]: *** [scripts/Makefile.modpost:117: __modpost] Error 2
make[1]: *** [Makefile:1738: modules] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.11.7-1-pve'
make: *** [Makefile:99: default] Error 2
make: Leaving directory '/var/lib/dkms/ixgbe/5.11.3/build/src'
1. Don't use ixgbe from intel on 5.11 kernel.
The module inside the kernel is probably newer, works better and has more features as intels corresponding driver that you can download.

2. https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1906131

This whole module linking issue with dkms, comes from a change since the 5.10 kernel.
They mention there, that it's a wanted change, and all the dkms packages needs to get updates and fixed.

It's probably super stupid, but it's how it is.
 

Neobin

Renowned Member
Apr 29, 2021
854
289
63
I also got the "No rule to make target 'scripts/module.lds'" error while installing the pve-kernel-5.11 from the 6.4 stable release with the nvidia-driver from buster-backports (460.67-1~bpo10+1) already installed.

Could solve it by copying /usr/src/linux-headers-5.11.7-1-pve/scripts/module.lds.S to /usr/src/linux-headers-5.11.7-1-pve/scripts/module.lds and removing the last line #include <asm/module.lds.h> from it.

As I am a linux newbie my question is when and by whom I/we can expect a fix for it?
For what I read and understand there already exists a patch from/for ubuntu.
But @Ramalama also states:
They mention there, that it's a wanted change, and all the dkms packages needs to get updates and fixed.

So the real question: Can we expect a fix(/temporary workaround?) with the next pve-kernel/headers update or do we need to wait for a updated driver-package (in my case from nvidia)?
If the latter one, does someone know if nvidia already fixed it and in which version and I/we only need to wait to get the specific version to the buster-backports?

PS.: As this is my first post, I also want to thank all of you for this awesome product very much! :)
 

t.lamprecht

Proxmox Staff Member
Staff member
Jul 28, 2015
5,501
1,752
164
South Tyrol/Italy
shop.proxmox.com
So the real question: Can we expect a fix(/temporary workaround?) with the next pve-kernel/headers update or do we need to wait for a updated driver-package (in my case from nvidia)?
I looked shortly into it last week, hoping that there's something in upstream dkms addressing that which could be backported or re-used, but I did not find anything specific then.

We can do the copy+adapt of the linker script, while it seems a bit hacky it is definitely better than not working.
I'll see if I can find some time to further investigate this..
 

tobby

Member
Feb 21, 2017
20
1
21
34
I tried the new kernel yesterday but for me it breaks USB-passthrough functionality. With Proxmox 6.4 and kernel 5.4 it's working, with kernel 5.11 after a while one VM stops working and this comes up in the syslog:
[ 846.440540] INFO: task kvm:9359 blocked for more than 241 seconds.
[ 846.441201] Tainted: P O 5.11.7-1-pve #1
[ 846.441707] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 846.442150] task:kvm state:D stack: 0 pid: 9359 ppid: 1 flags:0x00000000
[ 846.442613] Call Trace:
[ 846.443077] __schedule+0x3ae/0x830
[ 846.443563] schedule+0x40/0xb0
[ 846.444020] schedule_timeout+0x211/0x2a0
[ 846.444517] ? ttwu_do_activate+0x69/0xd0
[ 846.444961] wait_for_completion+0xa6/0x110
[ 846.445380] kthread_stop+0x6c/0x160
[ 846.445793] __w1_remove_master_device+0x88/0x190 [wire]
[ 846.446234] w1_remove_master_device+0x57/0x60 [wire]
[ 846.446673] ds_disconnect+0x5f/0x90 [ds2490]
[ 846.447078] usb_unbind_interface+0x77/0x250
[ 846.447488] ? kernfs_remove_by_name_ns+0x75/0xa0
[ 846.447875] device_release_driver_internal+0xfe/0x1d0
[ 846.448261] device_release_driver+0x12/0x20
[ 846.448676] usb_driver_release_interface+0x46/0x80
[ 846.449083] proc_ioctl+0x1ea/0x230
[ 846.449485] usbdev_ioctl+0x33f/0xfc0
[ 846.449900] ? __fput+0x11c/0x240
[ 846.450310] ? _cond_resched+0x19/0x30
[ 846.450706] __x64_sys_ioctl+0x92/0xd0
[ 846.451112] do_syscall_64+0x37/0x80
[ 846.451564] entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 846.452012] RIP: 0033:0x7ff8706a1427
[ 846.452466] RSP: 002b:00007fffff662148 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
[ 846.452925] RAX: ffffffffffffffda RBX: 00007fffff662160 RCX: 00007ff8706a1427
[ 846.453346] RDX: 00007fffff662150 RSI: 00000000c0105512 RDI: 000000000000002e
[ 846.453770] RBP: 0000559e4435ae00 R08: 00007fffff662190 R09: 0000559e43d27380
[ 846.454196] R10: 0000000000000006 R11: 0000000000000246 R12: 000000000000002e
[ 846.454638] R13: 0000000000000000 R14: 0000000000000060 R15: 0000000000000000
After this, that VM is not working anymore and new VMs with USB-passthrough can't be started, too. Only VMs without USB devices can be started then. And only a reboot helps until it happens again after a few minutes. Switches back to kernel 5.4 and there are no problems anymore.
 

Ramalama

Active Member
Dec 26, 2020
356
55
28
33
I tried the new kernel yesterday but for me it breaks USB-passthrough functionality. With Proxmox 6.4 and kernel 5.4 it's working, with kernel 5.11 after a while one VM stops working and this comes up in the syslog:

After this, that VM is not working anymore and new VMs with USB-passthrough can't be started, too. Only VMs without USB devices can be started then. And only a reboot helps until it happens again after a few minutes. Switches back to kernel 5.4 and there are no problems anymore.
That trace isn't super helpfull. Probably you could provide more details, like your hardware/chipset/usb controller device, dmesg -loglevel warn,error, etc...

Cheers
 

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 your own in 60 seconds.

Buy now!