> > Both powernow-k8 and cpuid attempt to schedule > > to the target CPU so they should already run there. But it is some other > > CPU, > > but when they ask your _on_cpu() functions they suddenly get a "real" CPU? > > Where is the difference between these levels of virtualness? > > *_on_cpu functions do some work on given physical CPU. > set_cpus_allowed() in openvz operates on VCPU level, so process doing > set_cpus_allowed() still could be scheduled anywhere.
Ok so you have multple levels. > > Also it has weird semantics. For example if you have multiple > > virtual CPUs mapping to a single CPU then would the powernow-k8 driver > > try to set the frequency multiple times on the same physical CPU? > > If core cpufreq locking is OK, why would it? It won't know about multiple CPUs mapping to a single CPU. > apply_microcode() looks small enough to convert it to IPIs, but so far > nobody asked for microcode updates in openvz. Well if they try it they will probably have problems. > > Before adding any hacks like this I think your vcpu concept > > needs to be discussed properly on l-k. For me it doesn't look like it is > > something good right now though. > > Andi, I think it all relies on correctness of core cpufreq locking. I have my doubts it will cope with you changing all reasonable expected semantics under it. -Andi _______________________________________________ Devel mailing list Devel@openvz.org https://openvz.org/mailman/listinfo/devel