If VPP crashes, the system loads without hugepages
Initial config:
set interfaces ethernet eth1 address '192.0.2.1/30' set interfaces ethernet eth1 description 'LAN' set interfaces ethernet eth1 vif 11 address '10.0.11.1/30' set interfaces ethernet eth1 vif 12 address '10.0.12.1/30' set interfaces ethernet eth1 vif 13 address '10.0.13.1/30' set interfaces ethernet eth1 vif 14 address '10.0.14.1/30' set interfaces ethernet eth1 vif 15 address '10.0.15.1/30' set interfaces ethernet eth1 vif 16 address '10.0.16.1/30' set interfaces ethernet eth1 vif 17 address '10.0.17.1/30' set interfaces ethernet eth1 vif 18 address '10.0.18.1/30' set system option kernel disable-mitigations set system option kernel memory hugepage-size 2M hugepage-count '1650' set vpp settings interface eth1 dpdk-options promisc set vpp settings interface eth1 driver 'dpdk' set vpp settings lcp netlink batch-delay-ms '10' set vpp settings lcp netlink batch-size '1024' set vpp settings lcp netlink rx-buffer-size '8388608' set vpp settings memory main-heap-page-size '2M' set vpp settings memory main-heap-size '3G' set vpp settings statseg size '128M' set vpp settings unix poll-sleep-usec '222'
All works fine and we see required kernel options:
vyos@r14:~$ cat /proc/cmdline BOOT_IMAGE=/boot/2025.07.22-0021-rolling/vmlinuz boot=live rootdelay=5 noautologin net.ifnames=0 biosdevname=0 vyos-union=/boot/2025.07.22-0021-rolling mitigations=off hugepagesz=2M hugepages=1650 console=tty0 vyos@r14:~$
Crash VPP, I got 8 Full BGP tables, but could be produced via kill (several times)
vyos@r14:~$ sudo kill -9 `pidof vpp` vyos@r14:~$ vyos@r14:~$ sudo pidof vpp vyos@r14:~$ sudo pidof vpp vyos@r14:~$ vyos@r14:~$ vyos@r14:~$ sudo pidof vppConnection to 192.168.122.14 closed by remote host. Connection to 192.168.122.14 closed. sever@sever:~$
Reboot the system and it loads without VPP and kernel-options hugepages in /proc/cmdline
vyos@r14:~$ cat /proc/cmdline BOOT_IMAGE=/boot/2025.07.22-0021-rolling/vmlinuz boot=live rootdelay=5 noautologin net.ifnames=0 biosdevname=0 vyos-union=/boot/2025.07.22-0021-rolling console=tty0 vyos@r14:~$
Check after the crash after reboot:
vyos@r14:~$ conf
WARNING: There was a config error on boot: saving the configuration now could overwrite data.
You may want to check and reload the boot config
[edit]
vyos@r14# load
Load complete. Use 'commit' to make changes effective.
[edit]
vyos@r14# compare
+ vpp {
+ settings {
+ interface eth1 {
+ dpdk-options {
+ promisc
+ }
+ driver "dpdk"
+ }
+ lcp {
+ netlink {
+ batch-delay-ms "10"
+ batch-size "1024"
+ rx-buffer-size "8388608"
+ }
+ }
+ memory {
+ main-heap-page-size "2M"
+ main-heap-size "3G"
+ }
+ statseg {
+ size "128M"
+ }
+ unix {
+ poll-sleep-usec "222"
+ }
+ }
+ }
[edit]
vyos@r14# commit
[ vpp ]
Not enough free hugepage memory to start VPP: available: 0.0 GB,
required: 3.2 GB. Please add kernel memory options for HugePages and
reboot
[[vpp]] failed
Commit failed
[edit]
vyos@r14#If we reboot again, the system will load with VPP and kernel options.