VPP configuration after upgrade cannot be loaded and requires a reboot 2 times
set interfaces ethernet eth0 address '192.168.122.14/24' set interfaces ethernet eth0 description 'WAN' set interfaces ethernet eth0 ipv6 address 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 system update-check auto-check set system update-check url 'https://raw.githubusercontent.com/vyos/vyos-nightly-build/refs/heads/current/version.json' set vpp settings interface eth1 dpdk-options promisc set vpp settings interface eth1 driver 'dpdk' 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'
Steps to reproduce: have initial config as above
And upgrade to the new image
vyos@r14:~$ add system image latest
Redirecting to https://release-assets.githubusercontent.com/github-production-release-asset/674742659/83271970-0926-493c-a958-ab8eae5f6954?sp=r&sv=2018-11-09&sr=b&spr=https&se=2025-07-22T10%3A58%3A55Z&rscd=attachment%3B+filename%3Dvyos-2025.07.22-0021-rolling-generic-amd64.iso&rsct=application%2Foctet-stream&skoid=96c2d410-5711-43a1-aedd-ab1947aa7ab0&sktid=398a6654-997b-47e9-b12b-9515b896b4de&skt=2025-07-22T09%3A58%3A24Z&ske=2025-07-22T10%3A58%3A55Z&sks=b&skv=2018-11-09&sig=6YzhxV2muXVQq9rkM7M6iVyttwU8Ztv8Jk3lBVFqYdk%3D&jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmVsZWFzZS1hc3NldHMuZ2l0aHVidXNlcmNvbnRlbnQuY29tIiwia2V5Ijoia2V5MSIsImV4cCI6MTc1MzE3ODkzMiwibmJmIjoxNzUzMTc4NjMyLCJwYXRoIjoicmVsZWFzZWFzc2V0cHJvZHVjdGlvbi5ibG9iLmNvcmUud2luZG93cy5uZXQifQ.wXxf_8BNRFq-n5bAQ3cJt0SUfat7p4Cu382XzVlQD08&response-content-disposition=attachment%3B%20filename%3Dvyos-2025.07.22-0021-rolling-generic-amd64.iso&response-content-type=application%2Foctet-stream
The file is 605.000 MiB.
[#####################################################################################################################################################################] 100%
Validating signature
Signature is valid
Validating image compatibility
Validating image checksums
What would you like to name this image? (Default: 2025.07.22-0021-rolling)
Would you like to set the new image as the default one for boot? [Y/n]
An active configuration was found. Would you like to copy it to the new image? [Y/n]
Copying configuration directory
Would you like to copy SSH host keys? [Y/n]
Copying SSH host keys
Copying system image files
Cleaning up
Unmounting target filesystems
Removing temporary files
vyos@r14:~$
vyos@r14:~$
vyos@r14:~$
vyos@r14:~$ reboot now
Broadcast message from root@vyos on pts/1 (Tue 2025-07-22 13:04:30 EEST):
The system will reboot now!
Connection to 192.168.122.14 closed by remote host.
Connection to 192.168.122.14 closed.
sever@sever:~$ sr14
Warning: Permanently added '192.168.122.14' (ED25519) to the list of known hosts.
Hello,
VyOS World!
---
WARNING: This VyOS system is not a stable long-term support version and
is not intended for production use.
vyos@r14:~$
vyos@r14:~$
vyos@r14:~$
vyos@r14:~$ show conf com | match vpp
vyos@r14:~$
vyos@r14:~$
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"
+ }
+ memory {
+ main-heap-page-size "2M"
+ main-heap-size "3G"
+ }
+ statseg {
+ size "128M"
+ }
+ unix {
+ poll-sleep-usec "222"
+ }
+ }
+ }
[edit]
vyos@r14#
[edit]
vyos@r14#
[edit]
vyos@r14# load commands
Cannot load: configuration modified.
Commit or discard the changes before loading a config file.
[edit]
vyos@r14# compare commands
set vpp settings interface eth1 dpdk-options promisc
set vpp settings interface eth1 driver 'dpdk'
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'
[edit]
vyos@r14#
[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# show system option kernel
disable-mitigations
memory {
hugepage-size 2M {
hugepage-count 1650
}
}
[edit]
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 console=tty0
[edit]
vyos@r14#
[edit]
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 console=tty0
[edit]
vyos@r14# run reboot nowAfter the second reboot, it is ok:
vyos@r14:~$ show conf com | match vpp set vpp settings interface eth1 dpdk-options promisc set vpp settings interface eth1 driver 'dpdk' 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' vyos@r14:~$
So it requires a reboot 2 times after the update/upgrade
It seems the reason is that the kernel options cannot be applied during the upgrade and require a reboot 2 times
set system option kernel memory hugepage-size 2M hugepage-count '1650'
After the second reboot:
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:~$
Possible fix requires changes here https://github.com/vyos/vyos-1x/blob/fe8559ec092aea60bf4104dfb1f91cd790ce9b55/src/op_mode/image_installer.py#L501-L513