kernel: landlock - Error on VM boot - assistance required

DerekG

Active Member
Mar 30, 2021
94
28
38
45
Hi all,

I have Proxmox 9.1.1 which was fully operational until I made 2 changes at the same time and am unsure why a single VM (out of 9 VM's/CT's) fails to complete the boot process.

The 1st change was hardware replacement, and as it's deep inside the NAS box, I really don't want to go back and fit the old parts at this stage.

2nd I had Kernel Linux 6.14.11-4-pve (it might have been the 6.8 kernel) pinned automatically after the upgrade from PVE 8.4, a couple of days ago I unpinned and upgraded to kernel 6.17.2-1-pve but this is the 1st reboot after that upgrade.

Now I get the following error (around 30 times) during the boot process:

Nov 26 22:37:17 pve-5 pveproxy[2214]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 26 22:37:17 pve-5 pveproxy[2214]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 26 22:37:17 pve-5 pveproxy[2214]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 26 22:37:18 pve-5 kernel: landlock: Disabled but requested by user space. You should enable Landlock at boot time: https://docs.kernel.org/userspace-api/landlock.html#boot-time-configuration

The VM in question is booted according to Proxmox, I can ping the device OK, but I am unable to access the console or the web interface to see what is going on.

I did try looking up the document detailed but my Linux is not good enough to understand what I am reading.

Note: I have returned to the 6.14.11 kernel, but the error remains.


Update on the above:

I have just pinned kernel Linux 6.8.12-14-pve and the VM in question is fully functional again.

So the error is introduced with 6.14 & persist with 6.17.

I would still like to resolve that matter if anyone can help.

Thank you.
 
Last edited:
Hmm I noticed these exact errors, googling brings up this thread only, in my case my server failed connection to my Proxmox Backup Server and then threw these errors like so:

Code:
Nov 28 05:41:34 Node_C pvestatd[2257]: primary-backups: error fetching datastores - 500 read timeout
Nov 28 05:41:34 Node_C pvestatd[2257]: status update time (9.088 seconds)
Nov 28 05:41:42 Node_C pvestatd[2257]: primary-backups: error fetching datastores - 500 Can't connect to 192.168.1.77:8007
Nov 28 05:41:42 Node_C pvestatd[2257]: status update time (7.522 seconds)
Nov 28 05:41:53 Node_C pvestatd[2257]: primary-backups: error fetching datastores - 500 Can't connect to 192.168.1.77:8007
Nov 28 05:41:53 Node_C pvestatd[2257]: status update time (7.507 seconds)
Nov 28 05:42:02 Node_C pvestatd[2257]: primary-backups: error fetching datastores - 500 Can't connect to 192.168.1.77:8007
Nov 28 05:42:02 Node_C pvestatd[2257]: status update time (7.519 seconds)
Nov 28 05:42:13 Node_C pvestatd[2257]: primary-backups: error fetching datastores - 500 Can't connect to 192.168.1.77:8007
Nov 28 05:42:13 Node_C pvestatd[2257]: status update time (7.526 seconds)
Nov 28 05:42:22 Node_C pvestatd[2257]: primary-backups: error fetching datastores - 500 Can't connect to 192.168.1.77:8007
Nov 28 05:42:22 Node_C pvestatd[2257]: status update time (7.517 seconds)
Nov 28 05:42:33 Node_C pvestatd[2257]: primary-backups: error fetching datastores - 500 Can't connect to 192.168.1.77:8007
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 28 05:50:03 Node_C pveproxy[2163275]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.

Once the backup server recovered these errors disappeared so I'm guessing it's failing to pull metrics from the specific item in question.

It's not like your VM is dead it just can't be viewed from the console, might be worth looking into this @fweber as rolling back Kernels is not a real great solution.
 
Hi!

Nov 26 22:37:17 pve-5 pveproxy[2214]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 26 22:37:17 pve-5 pveproxy[2214]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 26 22:37:17 pve-5 pveproxy[2214]: Use of uninitialized value $value in addition (+) at /usr/share/perl5/PVE/PullMetric.pm line 72.
Nov 26 22:37:18 pve-5 kernel: landlock: Disabled but requested by user space. You should enable Landlock at boot time: https://docs.kernel.org/userspace-api/landlock.html#boot-time-configuration
Have you installed any additional software, which actively uses the landlock kernel module? This warning is only reported, if one of the landlock syscalls (landlock_create_ruleset, landlock_add_rule, landlock_restrict_self) are trapped directly and AFAIK we don't use them directly.

I'll look into removing the uninitialized value warnings though.
 
+ What is the VM config of the VM that fails to start (e.g. cat /etc/pve/qemu-server/<vmid>.conf)?
 
Have you installed any additional software, which actively uses the landlock kernel module? This warning is only reported, if one of the landlock syscalls (landlock_create_ruleset, landlock_add_rule, landlock_restrict_self) are trapped directly and AFAIK we don't use them directly.
The node in question is AMD based, it does host a Windows 11 VM with the AMD iGPU passthrough, but that VM starts without issue.

The VM which fails to boot is a TrueNAS VM, with NVMe's & SATA interface passthrough, details of the config:

Code:
root@pve-5:~# cat /etc/pve/qemu-server/410.conf
#TrueNAS with 3 pools
#
#tank - 4x NVMe (RaidZ1) 12TB
#
#SSD - 2x SSD (Mirror) 1TB
#
#Rust - 4x HDD (RaidZ1) 12TB
#
#SMART disk checks from CLI. Check /dev/id with #lsblk - check%3A  #smartctl -a /dev/nvme0n1
#
#Check NVMe link speed
#
#lspci -vvvv|grep 'LnkSta%3A' | tail -n 5
agent: 1
balloon: 0
bios: ovmf
boot: order=scsi0;net0;ide2
cores: 4
cpu: host,flags=+aes
efidisk0: local-lvm:vm-410-disk-0,efitype=4m,size=528K
hostpci0: 0000:68:00.0,pcie=1
hostpci1: 0000:6b:00.0,pcie=1
hostpci2: 0000:6c:00.0,pcie=1
hostpci3: 0000:6d:00.0,pcie=1
hostpci4: 0000:67:00.0,pcie=1
ide2: none,media=cdrom
machine: q35
memory: 32768
meta: creation-qemu=9.2.0,ctime=1743866294
name: truenas-pve-4
net0: virtio=BC:24:11:1D:6E:F9,bridge=vmbr0
numa: 0
onboot: 1
ostype: l26
scsi0: local-lvm:vm-410-disk-1,discard=on,iothread=1,size=32G,ssd=1
scsihw: virtio-scsi-single
smbios1: uuid=13ea9c05-c9e8-44e5-a6ff-e08a65a7a8ae
sockets: 1
startup: order=1
tablet: 0
tags: 192.168.10.11
vmgenid: 52fa7a4e-d626-4a86-95c1-712e2a81e02d
root@pve-5:~#

I hope that helps with the diagnostics.

DerekG
 
I cannot see anything obviously wrong about the config. Can you post the VM start log and the syslog around the VM startup?