Nullify the x86_platform sched_clock save/restore hooks when setting up
Xen's PV clock to make it somewhat obvious the hooks aren't used when
running as a Xen guest (Xen uses a paravirtualized suspend/resume flow).

Signed-off-by: Sean Christopherson <sea...@google.com>
---
 arch/x86/xen/time.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/x86/xen/time.c b/arch/x86/xen/time.c
index 9e2e900dc0c7..51eba986cd18 100644
--- a/arch/x86/xen/time.c
+++ b/arch/x86/xen/time.c
@@ -565,6 +565,12 @@ static void __init xen_init_time_common(void)
        xen_sched_clock_offset = xen_clocksource_read();
        static_call_update(pv_steal_clock, xen_steal_clock);
        paravirt_set_sched_clock(xen_sched_clock);
+       /*
+        * Xen has paravirtualized suspend/resume and so doesn't use the common
+        * x86 sched_clock save/restore hooks.
+        */
+       x86_platform.save_sched_clock_state = NULL;
+       x86_platform.restore_sched_clock_state = NULL;
 
        tsc_register_calibration_routines(xen_tsc_khz, NULL);
        x86_platform.get_wallclock = xen_get_wallclock;
-- 
2.48.1.711.g2feabab25a-goog


Reply via email to