mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-12 21:57:43 +00:00
x86/kvmclock: Move this_cpu_pvti into kvmclock.h
commit ad9af93068
upstream.
There're other modules might use hv_clock_per_cpu variable like ptp_kvm,
so move it into kvmclock.h and export the symbol to make it visiable to
other modules.
Signed-off-by: Zelin Deng <zelin.deng@linux.alibaba.com>
Cc: <stable@vger.kernel.org>
Message-Id: <1632892429-101194-2-git-send-email-zelin.deng@linux.alibaba.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
50149e0866
commit
3443eb443f
2 changed files with 16 additions and 11 deletions
|
@ -2,6 +2,20 @@
|
||||||
#ifndef _ASM_X86_KVM_CLOCK_H
|
#ifndef _ASM_X86_KVM_CLOCK_H
|
||||||
#define _ASM_X86_KVM_CLOCK_H
|
#define _ASM_X86_KVM_CLOCK_H
|
||||||
|
|
||||||
|
#include <linux/percpu.h>
|
||||||
|
|
||||||
extern struct clocksource kvm_clock;
|
extern struct clocksource kvm_clock;
|
||||||
|
|
||||||
|
DECLARE_PER_CPU(struct pvclock_vsyscall_time_info *, hv_clock_per_cpu);
|
||||||
|
|
||||||
|
static inline struct pvclock_vcpu_time_info *this_cpu_pvti(void)
|
||||||
|
{
|
||||||
|
return &this_cpu_read(hv_clock_per_cpu)->pvti;
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline struct pvclock_vsyscall_time_info *this_cpu_hvclock(void)
|
||||||
|
{
|
||||||
|
return this_cpu_read(hv_clock_per_cpu);
|
||||||
|
}
|
||||||
|
|
||||||
#endif /* _ASM_X86_KVM_CLOCK_H */
|
#endif /* _ASM_X86_KVM_CLOCK_H */
|
||||||
|
|
|
@ -50,18 +50,9 @@ early_param("no-kvmclock-vsyscall", parse_no_kvmclock_vsyscall);
|
||||||
static struct pvclock_vsyscall_time_info
|
static struct pvclock_vsyscall_time_info
|
||||||
hv_clock_boot[HVC_BOOT_ARRAY_SIZE] __bss_decrypted __aligned(PAGE_SIZE);
|
hv_clock_boot[HVC_BOOT_ARRAY_SIZE] __bss_decrypted __aligned(PAGE_SIZE);
|
||||||
static struct pvclock_wall_clock wall_clock __bss_decrypted;
|
static struct pvclock_wall_clock wall_clock __bss_decrypted;
|
||||||
static DEFINE_PER_CPU(struct pvclock_vsyscall_time_info *, hv_clock_per_cpu);
|
|
||||||
static struct pvclock_vsyscall_time_info *hvclock_mem;
|
static struct pvclock_vsyscall_time_info *hvclock_mem;
|
||||||
|
DEFINE_PER_CPU(struct pvclock_vsyscall_time_info *, hv_clock_per_cpu);
|
||||||
static inline struct pvclock_vcpu_time_info *this_cpu_pvti(void)
|
EXPORT_PER_CPU_SYMBOL_GPL(hv_clock_per_cpu);
|
||||||
{
|
|
||||||
return &this_cpu_read(hv_clock_per_cpu)->pvti;
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline struct pvclock_vsyscall_time_info *this_cpu_hvclock(void)
|
|
||||||
{
|
|
||||||
return this_cpu_read(hv_clock_per_cpu);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The wallclock is the time of day when we booted. Since then, some time may
|
* The wallclock is the time of day when we booted. Since then, some time may
|
||||||
|
|
Loading…
Reference in a new issue