Re: [PATCH] rdmsr_on_cpu, wrmsr_on_cpu

2007-01-18 Thread H. Peter Anvin
Andi Kleen wrote: On Friday 19 January 2007 10:40, H. Peter Anvin wrote: It would, but rather than having the paravirtualization interfaces duplicate out of control, we could/should implement the less generic features in terms of the more generic, above the pvz layer. I can't see any

Re: [PATCH] rdmsr_on_cpu, wrmsr_on_cpu

2007-01-18 Thread Andi Kleen
On Friday 19 January 2007 10:40, H. Peter Anvin wrote: > It would, but rather than having the paravirtualization interfaces > duplicate out of control, we could/should implement the less generic > features in terms of the more generic, above the pvz layer. I can't see any Hypervisors ever

Re: [PATCH] rdmsr_on_cpu, wrmsr_on_cpu

2007-01-18 Thread H. Peter Anvin
Andi Kleen wrote: HOWEVER -- and this is where things get gnarly -- the CPUID and MSR drivers would really like to be able to execute CPUID, WRMSR and RDMSR with the entire GPR register set (except the stack pointer) pre-set and post-captured, since it's highly likely that there are going to be

Re: [PATCH] rdmsr_on_cpu, wrmsr_on_cpu

2007-01-18 Thread Andi Kleen
> HOWEVER -- and this is where things get gnarly -- the CPUID and MSR > drivers would really like to be able to execute CPUID, WRMSR and RDMSR > with the entire GPR register set (except the stack pointer) pre-set and > post-captured, since it's highly likely that there are going to be >

Re: [PATCH] rdmsr_on_cpu, wrmsr_on_cpu

2007-01-18 Thread H. Peter Anvin
Alexey Dobriyan wrote: There was OpenVZ specific bug rendering some cpufreq drivers unusable on SMP. In short, when cpufreq code thinks it confined itself to needed cpu by means of set_cpus_allowed() to execute rdmsr, some "virtual cpu" feature can migrate process to anywhere. This triggers

[PATCH] rdmsr_on_cpu, wrmsr_on_cpu

2007-01-18 Thread Alexey Dobriyan
There was OpenVZ specific bug rendering some cpufreq drivers unusable on SMP. In short, when cpufreq code thinks it confined itself to needed cpu by means of set_cpus_allowed() to execute rdmsr, some "virtual cpu" feature can migrate process to anywhere. This triggers bugons and does wrong things

[PATCH] rdmsr_on_cpu, wrmsr_on_cpu

2007-01-18 Thread Alexey Dobriyan
There was OpenVZ specific bug rendering some cpufreq drivers unusable on SMP. In short, when cpufreq code thinks it confined itself to needed cpu by means of set_cpus_allowed() to execute rdmsr, some virtual cpu feature can migrate process to anywhere. This triggers bugons and does wrong things in

Re: [PATCH] rdmsr_on_cpu, wrmsr_on_cpu

2007-01-18 Thread H. Peter Anvin
Alexey Dobriyan wrote: There was OpenVZ specific bug rendering some cpufreq drivers unusable on SMP. In short, when cpufreq code thinks it confined itself to needed cpu by means of set_cpus_allowed() to execute rdmsr, some virtual cpu feature can migrate process to anywhere. This triggers bugons

Re: [PATCH] rdmsr_on_cpu, wrmsr_on_cpu

2007-01-18 Thread Andi Kleen
HOWEVER -- and this is where things get gnarly -- the CPUID and MSR drivers would really like to be able to execute CPUID, WRMSR and RDMSR with the entire GPR register set (except the stack pointer) pre-set and post-captured, since it's highly likely that there are going to be nonstandard

Re: [PATCH] rdmsr_on_cpu, wrmsr_on_cpu

2007-01-18 Thread H. Peter Anvin
Andi Kleen wrote: HOWEVER -- and this is where things get gnarly -- the CPUID and MSR drivers would really like to be able to execute CPUID, WRMSR and RDMSR with the entire GPR register set (except the stack pointer) pre-set and post-captured, since it's highly likely that there are going to be

Re: [PATCH] rdmsr_on_cpu, wrmsr_on_cpu

2007-01-18 Thread Andi Kleen
On Friday 19 January 2007 10:40, H. Peter Anvin wrote: It would, but rather than having the paravirtualization interfaces duplicate out of control, we could/should implement the less generic features in terms of the more generic, above the pvz layer. I can't see any Hypervisors ever allowing

Re: [PATCH] rdmsr_on_cpu, wrmsr_on_cpu

2007-01-18 Thread H. Peter Anvin
Andi Kleen wrote: On Friday 19 January 2007 10:40, H. Peter Anvin wrote: It would, but rather than having the paravirtualization interfaces duplicate out of control, we could/should implement the less generic features in terms of the more generic, above the pvz layer. I can't see any