In the context of custom CPU models, the hv-* flags are not part of the base list at all. This means they don't show up in the selector, not even as unsupported, making it impossible to set them without manually editing cpu-models.conf.
Until now, this base list was generated from the '-cpu help' output at pve-qemu-kvm build time [0]. The first patch refactors the script parsing CPU flags to additionally include the Hyper-V enlightenments by sourcing the flags from the qom-list-properties QMP command instead, blacklisting unwanted properties this new source would add. The second patch pins the resulting flag list into the repository and fails the build on any divergence, as already done for CPU models. This ensures flag additions/removals are surfaced for review on QEMU bumps. [0] https://git.proxmox.com/?p=pve-qemu.git;a=blob;f=debian/rules;h=c90db29b0f03568224b1c79431bce2b753283a4d;hb=refs/heads/master#l126 Changes since v2 (thanks @Fiona): * Rename $blacklist to $filtered_props * Die if QMP greeting does not have the expected format * Expect the CPU typename as a CLI parameter and use max-x86_64-cpu instead of host-x86_64-cpu for portability * Group blacklist entries by typename * Fix some style errors and remove dead code Arthur Bied-Charreton (2): build: include Hyper-V enlightenments in CPUID flags list build: fail when recognized CPUID flags list changes debian/parse-cpu-flags.pl | 144 ++++++++- debian/recognized-CPUID-flags-x86_64 | 429 +++++++++++++++++++++++++++ debian/rules | 6 +- 3 files changed, 563 insertions(+), 16 deletions(-) create mode 100644 debian/recognized-CPUID-flags-x86_64 -- 2.47.3
