Upgrade to 4.4.50-rt62
[kvmfornfv.git] / kernel / drivers / hv / hv.c
index 6341be8..63194a9 100644 (file)
@@ -293,8 +293,14 @@ void hv_cleanup(void)
         * Cleanup the TSC page based CS.
         */
        if (ms_hyperv.features & HV_X64_MSR_REFERENCE_TSC_AVAILABLE) {
-               clocksource_change_rating(&hyperv_cs_tsc, 10);
-               clocksource_unregister(&hyperv_cs_tsc);
+               /*
+                * Crash can happen in an interrupt context and unregistering
+                * a clocksource is impossible and redundant in this case.
+                */
+               if (!oops_in_progress) {
+                       clocksource_change_rating(&hyperv_cs_tsc, 10);
+                       clocksource_unregister(&hyperv_cs_tsc);
+               }
 
                hypercall_msr.as_uint64 = 0;
                wrmsrl(HV_X64_MSR_REFERENCE_TSC, hypercall_msr.as_uint64);