On Mon, Jun 05, 2017 at 12:56:55PM -0300, Eduardo Habkost wrote: > Since the automatic cpuid-level code was introduced in commit > c39c0edf9bb3b968ba95484465a50c7b19f4aa3a, the CPU model tables just > define the default CPUID level code (set using "min-level"). Setting > "[x]level" forces CPUID level to a specific value and disable the > automatic-level logic. > > But the PC compat code was not updated and the existing "[x]level" > compat properties broke compatibility for people using features that > triggered the auto-level code. To keep previous behavior, we should set > "min-[x]level" instead of "[x]level" on compat_props. > > This was not a problem for most cases, because old machine-types don't > have full-cpuid-auto-level enabled. The only common use case it broke > was the CPUID[7] auto-level code, that was already enabled since the > first CPUID[7] feature was introduced (in QEMU 1.4.0). > > This causes the regression reported at: > https://bugzilla.redhat.com/show_bug.cgi?id=1454641 > > Change the PC compat code to use "min-[x]level" instead of "[x]level" on > compat_props, and add new test cases to ensure we don't break this > again. > > Reported-by: "Guo, Zhiyi" <zh...@redhat.com> > Signd-off-by: Eduardo Habkost <ehabk...@redhat.com>
Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> -- Eduardo