x86: Use this_cpu_ops to optimize code
Go through x86 code and replace __get_cpu_var and get_cpu_var instances that refer to a scalar and are not used for address determinations. Cc: Yinghai Lu <yinghai@kernel.org> Cc: Ingo Molnar <mingo@elte.hu> Acked-by: Tejun Heo <tj@kernel.org> Acked-by: "H. Peter Anvin" <hpa@zytor.com> Signed-off-by: Christoph Lameter <cl@linux.com> Signed-off-by: Tejun Heo <tj@kernel.org>
This commit is contained in:
@@ -981,7 +981,7 @@ static inline u64 nsec_to_cycles(u64 nsec)
|
||||
if (kvm_tsc_changes_freq())
|
||||
printk_once(KERN_WARNING
|
||||
"kvm: unreliable cycle conversion on adjustable rate TSC\n");
|
||||
ret = nsec * __get_cpu_var(cpu_tsc_khz);
|
||||
ret = nsec * __this_cpu_read(cpu_tsc_khz);
|
||||
do_div(ret, USEC_PER_SEC);
|
||||
return ret;
|
||||
}
|
||||
@@ -1066,7 +1066,7 @@ static int kvm_guest_time_update(struct kvm_vcpu *v)
|
||||
local_irq_save(flags);
|
||||
kvm_get_msr(v, MSR_IA32_TSC, &tsc_timestamp);
|
||||
kernel_ns = get_kernel_ns();
|
||||
this_tsc_khz = __get_cpu_var(cpu_tsc_khz);
|
||||
this_tsc_khz = __this_cpu_read(cpu_tsc_khz);
|
||||
|
||||
if (unlikely(this_tsc_khz == 0)) {
|
||||
local_irq_restore(flags);
|
||||
@@ -4432,7 +4432,7 @@ EXPORT_SYMBOL_GPL(kvm_fast_pio_out);
|
||||
|
||||
static void tsc_bad(void *info)
|
||||
{
|
||||
__get_cpu_var(cpu_tsc_khz) = 0;
|
||||
__this_cpu_write(cpu_tsc_khz, 0);
|
||||
}
|
||||
|
||||
static void tsc_khz_changed(void *data)
|
||||
@@ -4446,7 +4446,7 @@ static void tsc_khz_changed(void *data)
|
||||
khz = cpufreq_quick_get(raw_smp_processor_id());
|
||||
if (!khz)
|
||||
khz = tsc_khz;
|
||||
__get_cpu_var(cpu_tsc_khz) = khz;
|
||||
__this_cpu_write(cpu_tsc_khz, khz);
|
||||
}
|
||||
|
||||
static int kvmclock_cpufreq_notifier(struct notifier_block *nb, unsigned long val,
|
||||
|
Reference in New Issue
Block a user