KVM: PPC: Book3S HV: Expose timing functions to module code
The next patch adds new timing points to the P9 entry path, some of which are in the module code, so we need to export the timing functions. Signed-off-by: Fabiano Rosas <farosas@linux.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20220525130554.2614394-5-farosas@linux.ibm.com
This commit is contained in:
parent
c3fa64c99c
commit
2861c82728
|
@ -40,3 +40,13 @@ void switch_pmu_to_guest(struct kvm_vcpu *vcpu,
|
|||
struct p9_host_os_sprs *host_os_sprs);
|
||||
void switch_pmu_to_host(struct kvm_vcpu *vcpu,
|
||||
struct p9_host_os_sprs *host_os_sprs);
|
||||
|
||||
#ifdef CONFIG_KVM_BOOK3S_HV_P9_TIMING
|
||||
void accumulate_time(struct kvm_vcpu *vcpu, struct kvmhv_tb_accumulator *next);
|
||||
#define start_timing(vcpu, next) accumulate_time(vcpu, next)
|
||||
#define end_timing(vcpu) accumulate_time(vcpu, NULL)
|
||||
#else
|
||||
#define accumulate_time(vcpu, next) do {} while (0)
|
||||
#define start_timing(vcpu, next) do {} while (0)
|
||||
#define end_timing(vcpu) do {} while (0)
|
||||
#endif
|
||||
|
|
|
@ -438,7 +438,7 @@ void restore_p9_host_os_sprs(struct kvm_vcpu *vcpu,
|
|||
EXPORT_SYMBOL_GPL(restore_p9_host_os_sprs);
|
||||
|
||||
#ifdef CONFIG_KVM_BOOK3S_HV_P9_TIMING
|
||||
static void __accumulate_time(struct kvm_vcpu *vcpu, struct kvmhv_tb_accumulator *next)
|
||||
void accumulate_time(struct kvm_vcpu *vcpu, struct kvmhv_tb_accumulator *next)
|
||||
{
|
||||
struct kvmppc_vcore *vc = vcpu->arch.vcore;
|
||||
struct kvmhv_tb_accumulator *curr;
|
||||
|
@ -468,14 +468,7 @@ static void __accumulate_time(struct kvm_vcpu *vcpu, struct kvmhv_tb_accumulator
|
|||
smp_wmb();
|
||||
curr->seqcount = seq + 2;
|
||||
}
|
||||
|
||||
#define start_timing(vcpu, next) __accumulate_time(vcpu, next)
|
||||
#define end_timing(vcpu) __accumulate_time(vcpu, NULL)
|
||||
#define accumulate_time(vcpu, next) __accumulate_time(vcpu, next)
|
||||
#else
|
||||
#define start_timing(vcpu, next) do {} while (0)
|
||||
#define end_timing(vcpu) do {} while (0)
|
||||
#define accumulate_time(vcpu, next) do {} while (0)
|
||||
EXPORT_SYMBOL_GPL(accumulate_time);
|
||||
#endif
|
||||
|
||||
static inline u64 mfslbv(unsigned int idx)
|
||||
|
|
Loading…
Reference in New Issue