* [PATCH] x86/HVM: make hvm_set_guest_tsc*() static
@ 2017-01-24 9:33 Jan Beulich
2017-01-24 10:29 ` Andrew Cooper
0 siblings, 1 reply; 2+ messages in thread
From: Jan Beulich @ 2017-01-24 9:33 UTC (permalink / raw)
To: xen-devel; +Cc: Andrew Cooper
[-- Attachment #1: Type: text/plain, Size: 2205 bytes --]
Other than hvm_set_guest_tsc(), neither needs to be exposed. And
hvm_get_guest_tsc_adjust() is pretty pointless as a seperate function
altogether, let alone a non-static one.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
--- a/xen/arch/x86/hvm/hvm.c
+++ b/xen/arch/x86/hvm/hvm.c
@@ -369,7 +369,7 @@ u64 hvm_scale_tsc(const struct domain *d
return tsc;
}
-void hvm_set_guest_tsc_fixed(struct vcpu *v, u64 guest_tsc, u64 at_tsc)
+static void hvm_set_guest_tsc_fixed(struct vcpu *v, u64 guest_tsc, u64 at_tsc)
{
uint64_t tsc;
uint64_t delta_tsc;
@@ -394,7 +394,9 @@ void hvm_set_guest_tsc_fixed(struct vcpu
hvm_funcs.set_tsc_offset(v, v->arch.hvm_vcpu.cache_tsc_offset, at_tsc);
}
-void hvm_set_guest_tsc_adjust(struct vcpu *v, u64 tsc_adjust)
+#define hvm_set_guest_tsc(v, t) hvm_set_guest_tsc_fixed(v, t, 0)
+
+static void hvm_set_guest_tsc_adjust(struct vcpu *v, u64 tsc_adjust)
{
v->arch.hvm_vcpu.cache_tsc_offset += tsc_adjust
- v->arch.hvm_vcpu.msr_tsc_adjust;
@@ -421,11 +423,6 @@ u64 hvm_get_guest_tsc_fixed(struct vcpu
return tsc + v->arch.hvm_vcpu.cache_tsc_offset;
}
-u64 hvm_get_guest_tsc_adjust(struct vcpu *v)
-{
- return v->arch.hvm_vcpu.msr_tsc_adjust;
-}
-
void hvm_migrate_timers(struct vcpu *v)
{
/* PVH doesn't use rtc and emulated timers, it uses pvclock mechanism. */
@@ -3354,7 +3351,7 @@ int hvm_msr_read_intercept(unsigned int
break;
case MSR_IA32_TSC_ADJUST:
- *msr_content = hvm_get_guest_tsc_adjust(v);
+ *msr_content = v->arch.hvm_vcpu.msr_tsc_adjust;
break;
case MSR_TSC_AUX:
--- a/xen/include/asm-x86/hvm/hvm.h
+++ b/xen/include/asm-x86/hvm/hvm.h
@@ -248,8 +248,6 @@ void hvm_vcpu_reset_state(struct vcpu *v
void hvm_get_guest_pat(struct vcpu *v, u64 *guest_pat);
int hvm_set_guest_pat(struct vcpu *v, u64 guest_pat);
-void hvm_set_guest_tsc_fixed(struct vcpu *v, u64 guest_tsc, u64 at_tsc);
-#define hvm_set_guest_tsc(v, t) hvm_set_guest_tsc_fixed(v, t, 0)
u64 hvm_get_guest_tsc_fixed(struct vcpu *v, u64 at_tsc);
#define hvm_get_guest_tsc(v) hvm_get_guest_tsc_fixed(v, 0)
[-- Attachment #2: x86-HVM-TSC-adjust-static.patch --]
[-- Type: text/plain, Size: 2244 bytes --]
x86/HVM: make hvm_set_guest_tsc*() static
Other than hvm_set_guest_tsc(), neither needs to be exposed. And
hvm_get_guest_tsc_adjust() is pretty pointless as a seperate function
altogether, let alone a non-static one.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
--- a/xen/arch/x86/hvm/hvm.c
+++ b/xen/arch/x86/hvm/hvm.c
@@ -369,7 +369,7 @@ u64 hvm_scale_tsc(const struct domain *d
return tsc;
}
-void hvm_set_guest_tsc_fixed(struct vcpu *v, u64 guest_tsc, u64 at_tsc)
+static void hvm_set_guest_tsc_fixed(struct vcpu *v, u64 guest_tsc, u64 at_tsc)
{
uint64_t tsc;
uint64_t delta_tsc;
@@ -394,7 +394,9 @@ void hvm_set_guest_tsc_fixed(struct vcpu
hvm_funcs.set_tsc_offset(v, v->arch.hvm_vcpu.cache_tsc_offset, at_tsc);
}
-void hvm_set_guest_tsc_adjust(struct vcpu *v, u64 tsc_adjust)
+#define hvm_set_guest_tsc(v, t) hvm_set_guest_tsc_fixed(v, t, 0)
+
+static void hvm_set_guest_tsc_adjust(struct vcpu *v, u64 tsc_adjust)
{
v->arch.hvm_vcpu.cache_tsc_offset += tsc_adjust
- v->arch.hvm_vcpu.msr_tsc_adjust;
@@ -421,11 +423,6 @@ u64 hvm_get_guest_tsc_fixed(struct vcpu
return tsc + v->arch.hvm_vcpu.cache_tsc_offset;
}
-u64 hvm_get_guest_tsc_adjust(struct vcpu *v)
-{
- return v->arch.hvm_vcpu.msr_tsc_adjust;
-}
-
void hvm_migrate_timers(struct vcpu *v)
{
/* PVH doesn't use rtc and emulated timers, it uses pvclock mechanism. */
@@ -3354,7 +3351,7 @@ int hvm_msr_read_intercept(unsigned int
break;
case MSR_IA32_TSC_ADJUST:
- *msr_content = hvm_get_guest_tsc_adjust(v);
+ *msr_content = v->arch.hvm_vcpu.msr_tsc_adjust;
break;
case MSR_TSC_AUX:
--- a/xen/include/asm-x86/hvm/hvm.h
+++ b/xen/include/asm-x86/hvm/hvm.h
@@ -248,8 +248,6 @@ void hvm_vcpu_reset_state(struct vcpu *v
void hvm_get_guest_pat(struct vcpu *v, u64 *guest_pat);
int hvm_set_guest_pat(struct vcpu *v, u64 guest_pat);
-void hvm_set_guest_tsc_fixed(struct vcpu *v, u64 guest_tsc, u64 at_tsc);
-#define hvm_set_guest_tsc(v, t) hvm_set_guest_tsc_fixed(v, t, 0)
u64 hvm_get_guest_tsc_fixed(struct vcpu *v, u64 at_tsc);
#define hvm_get_guest_tsc(v) hvm_get_guest_tsc_fixed(v, 0)
[-- Attachment #3: Type: text/plain, Size: 127 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] x86/HVM: make hvm_set_guest_tsc*() static
2017-01-24 9:33 [PATCH] x86/HVM: make hvm_set_guest_tsc*() static Jan Beulich
@ 2017-01-24 10:29 ` Andrew Cooper
0 siblings, 0 replies; 2+ messages in thread
From: Andrew Cooper @ 2017-01-24 10:29 UTC (permalink / raw)
To: Jan Beulich, xen-devel
On 24/01/17 09:33, Jan Beulich wrote:
> Other than hvm_set_guest_tsc(), neither needs to be exposed. And
> hvm_get_guest_tsc_adjust() is pretty pointless as a seperate function
> altogether, let alone a non-static one.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2017-01-24 10:29 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-24 9:33 [PATCH] x86/HVM: make hvm_set_guest_tsc*() static Jan Beulich
2017-01-24 10:29 ` Andrew Cooper
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.