Jan Kiszka wrote: > On 2012-03-09 19:27, 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) >> ===================== >> >> 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. > > The user would have to specify the new feature as exclusions > *manually* on the command line if -machine pc-A doesn't inject them > *automatically*. So it is necessary to enhance qemu in this regard. > ... You suggest 'append a string of "-feature1,-feature2" to the cpu model that is specified on creation' at your last email. Could you tell me other way user exclude features? I only know qemu command line :-( 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