Liu, Jinsong wrote: > Jan Kiszka wrote: >> On 2012-03-06 08:49, Liu, Jinsong wrote: >>> Jan, >>> >>> Any comments? I feel some confused about your point 'disable cpuid >>> feature for older machine types by default': are you planning a >>> common approach for this common issue, or, you just ask me a >>> specific solution for the tsc deadline timer case? >> >> I think a generic solution for this can be as simple as passing a >> feature exclusion mask to cpu_init. You could simple append a string >> of "-feature1,-feature2" to the cpu model that is specified on >> creation. And that string could be defined in the compat machine >> descriptions. Does this make sense? >> > > Jan, to prevent misunderstanding, I elaborate my understanding of > your points below (if any misunderstanding please point out to me): > ===================== > Your target is, to migrate from A(old qemu) to B(new qemu) by > 1. at A: qemu-version-A [-cpu whatever] // currently the default > machine type is pc-A > 2. at B: qemu-version-B -machine pc-A [-cpu whatever] -feature1 > -feature2 > > B run new qemu-version-B (w/ new features 'feature1' and 'feature2'), > but when B runs w/ compat '-machine pc-A', vm should not see > 'feature1' and 'feature2', so commandline append string to cpu model > '-cpu whatever -feature1 -feature2' to hidden new feature1 and > feature2 to vm, hence vm can see same cpuid features (at B) as those > at A (which means, no feature1, no feature2) ===================== > BTW, any misunderstanding or something wrong about my understanding of your target? please help me confirm. I want to make sure we are talking same thing. Thanks, Jinsong > If my understanding of your thoughts is right, I think currently qemu > has satisfied your target, code refer to pc_cpus_init(cpu_model) > ...... > cpu_init(cpu_model) > --> cpu_x86_register(*env, cpu_model) > --> cpu_x86_find_by_name(*def, cpu_model) // parse '+/- > > features', generate feature masks plus_features... // and > minus_features...(this is feature exclusion masks you want) > I think your point 'define in the compat machine description' is > unnecessary. > > As for 'tsc deadline' feature exposing, my patch (as attached) just > obey qemu general cpuid exposing method, and also satisfied your > target I think. > > > Thanks, > Jinsong -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html