virtualisation:proxmox_ve:known_bugs_in_proxmox_ve_9
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| virtualisation:proxmox_ve:known_bugs_in_proxmox_ve_9 [2026/04/14 20:12] – removed - external edit (Unknown date) 127.0.0.1 | virtualisation:proxmox_ve:known_bugs_in_proxmox_ve_9 [2026/04/14 20:12] (current) – ↷ Page moved from virtualisation:proxmox_ve:vms_cts:known_bugs_in_proxmox_ve_9 to virtualisation:proxmox_ve:known_bugs_in_proxmox_ve_9 thum | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== Known Bugs and Quirks in Proxmox VE ≥ 9 ====== | ||
| + | ===== Changes Proxmox VE 8 to Proxmox VE 9 ===== | ||
| + | |||
| + | Please note the official upgrade comments: [[https:// | ||
| + | |||
| + | ===== Proxmox VE 9: VM RAM Usage Displayed Higher Than Actual ===== | ||
| + | |||
| + | ==== Background ==== | ||
| + | |||
| + | * Official documentation: | ||
| + | * Confirmed in forum: [[https:// | ||
| + | |||
| + | ==== What Changed in Proxmox 9 ==== | ||
| + | |||
| + | In **PVE 9**, VMs that do not report memory usage via the ballooning mechanism — as well as '' | ||
| + | |||
| + | This is a deliberate change from PVE 8, where the host-side RSS of the '' | ||
| + | |||
| + | ==== Clarification: | ||
| + | |||
| + | The issue for FreeBSD is **not** that the balloon driver may be missing. | ||
| + | |||
| + | < | ||
| + | FreeBSD' | ||
| + | </ | ||
| + | |||
| + | This is an open bug in FreeBSD: | ||
| + | * [[https:// | ||
| + | |||
| + | === Windows === | ||
| + | |||
| + | This differs from Windows without the VirtIO BalloonService, | ||
| + | |||
| + | ==== Affected VM Types ==== | ||
| + | |||
| + | ^ Guest OS ^ Reason ^ Driver Status ^ | ||
| + | | FreeBSD / OPNsense / pfSense | '' | ||
| + | | Windows (without VirtIO BalloonService) | Balloon driver not installed | Driver absent | | ||
| + | | Any VM with '' | ||
| + | |||
| + | ==== Practical Impact ==== | ||
| + | |||
| + | * No impact on stability or VM operation | ||
| + | * RAM usage in the Proxmox VE GUI and API is misleading for affected VMs | ||
| + | * Dynamic memory reclamation (balloon deflation) by the host does not work reliably for FreeBSD guests | ||
| + | * Risk of unexpected OOM conditions on the host if memory pressure is high and FreeBSD VMs cannot be deflated | ||
| + | |||
| + | ==== What to do? ==== | ||
| + | |||
| + | * Disable ballooning for FreeBSD VMs (since it does not function correctly anyway): //'# qm set < | ||
| + | * Use // | ||
| + | * Monitor via external tooling such as LibreNMS, Prometheus + node_exporter or Zabbix, deployed inside the FreeBSD VM | ||
| + | * Read actual guest memory usage via the QEMU Guest Agent (see next chapter): | ||
| + | |||
| + | |||
| + | ===== FreeBSD VM Memory Analysis via QEMU Guest Agent ===== | ||
| + | |||
| + | ==== Background ==== | ||
| + | |||
| + | When running FreeBSD as a Proxmox/ | ||
| + | |||
| + | ==== Querying Memory Stats ==== | ||
| + | |||
| + | Run the following on the Proxmox node where the VM resides. | ||
| + | |||
| + | < | ||
| + | qm guest exec 100 -- sh -c " | ||
| + | vm.stats.vm.v_page_count \ | ||
| + | vm.stats.vm.v_active_count \ | ||
| + | vm.stats.vm.v_inactive_count \ | ||
| + | vm.stats.vm.v_wire_count \ | ||
| + | vm.stats.vm.v_free_count \ | ||
| + | vm.stats.vm.v_cache_count \ | ||
| + | vm.stats.vm.v_page_size" | ||
| + | </ | ||
| + | |||
| + | **Important: | ||
| + | < | ||
| + | Configuration file ' | ||
| + | </ | ||
| + | |||
| + | ==== Example Output & Interpretation ==== | ||
| + | |||
| + | Example raw output ('' | ||
| + | < | ||
| + | 2018895\n15672\n64009\n123634\n1812399\n0\n4096 | ||
| + | </ | ||
| + | |||
| + | ^ sysctl Key ^ Pages ^ MB ^ % ^ Notes ^ | ||
| + | | v_page_count (Total) | ||
| + | | v_active_count | ||
| + | | v_inactive_count | ||
| + | | v_wire_count | ||
| + | | v_free_count | ||
| + | | v_cache_count | ||
| + | |||
| + | **Calculation formulas:** | ||
| + | |||
| + | * Total MB = '' | ||
| + | * Effectively used MB = '' | ||
| + | * Available MB = '' | ||
| + | |||
| + | ==== The Ballooning Problem ==== | ||
| + | |||
| + | === v_cache_count = 0 === | ||
| + | |||
| + | Normally FreeBSD fills the page cache aggressively. A value of '' | ||
| + | |||
| + | === Why Proxmox Shows Wrong RAM Usage === | ||
| + | |||
| + | Proxmox derives the displayed RAM usage from the **balloon driver** (virtio-balloon), | ||
| + | |||
| + | === Summary === | ||
| + | |||
| + | ^ Metric | ||
| + | | Effectively used RAM | ~544 MB | | ||
| + | | Proxmox-reported RAM | ~7.7 GB | | ||
| + | | Discrepancy factor | ||
