On Mon, Apr 25, 2022 at 15:28:24 +0200, Peter Krempa wrote: > Bugs in the code meant to invalidate the qemu capabilities cache > resulted in us always re-probing capabilities on startup of > libvirtd/virtqemud. This got extremely annoying with the modern > deployments using --timeout. > > Apart from issues in inserting the detected features, it also turns out > that AMD boxes report data which changes based on which CPU the > instruction happened to execute, so we need to mask that out. > > Peter Krempa (7): > virCPUx86DataIsIdentical: Add debug output > virCPUx86DataGetHost: Fix construction of the returned data > virHostCPUGetCPUID: Add comment on how KVM_GET_SUPPORTED_CPUID works > util: virhostcpu: Extract filtering of the returned data from > virHostCPUGetCPUID > virHostCPUGetCPUID: Fix possible allocation of huge amount of memory > virHostCPUGetCPUID: Limit the buffer size ranges > virHostCPUGetCPUIDFilterVolatile: Filter out topology data on AMD > > src/cpu/cpu_x86.c | 31 ++++++++++--- > src/util/virhostcpu.c | 104 ++++++++++++++++++++++++++++++++++++------ > 2 files changed, 116 insertions(+), 19 deletions(-) Wow, KVM_GET_SUPPORTED_CPUID has a very unfriendly semantics. Reviewed-by: Jiri Denemark <jdenemar@xxxxxxxxxx>