Re: RE: [PATCH] clocksource: hyper-v: Fix hv tsc page based sched_clock for hibernation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 9/9/2024 9:16 PM, Michael Kelley wrote:
From: Naman Jain <namjain@xxxxxxxxxxxxxxxxxxx> Sent: Sunday, September 8, 2024 10:39 PM

read_hv_sched_clock_tsc() assumes that the Hyper-V clock counter is
bigger than the variable hv_sched_clock_offset, which is cached during
early boot, but depending on the timing this assumption may be false

..

+	old_save_sched_clock_state = x86_platform.save_sched_clock_state;
+	x86_platform.save_sched_clock_state = hv_save_sched_clock_state;
+	old_restore_sched_clock_state = x86_platform.restore_sched_clock_state;
+	x86_platform.restore_sched_clock_state = hv_restore_sched_clock_state;

This Hyper-V clocksource/timer driver has intentionally been kept
instruction set architecture independent.  See the comment at the top
of the source code file. We've also avoided any "#ifdef x86" or similar, though
it's OK to have #ifdef's on specific clock-related functionality like
GENERIC_SCHED_CLOCK.

The reference to "x86_platform" violates the intended independence. The
code to save-on-suspend and update-on-resume can probably stay in this
module in generic form, but hooking the functions into the x86_platform
function call mechanism should move to x86-specific code.

Michael


Thanks for the review and guidance Michael. I'll take care of it in v2.


Regards,
Naman


+
  	/*
  	 * TSC page mapping works differently in root compared to guest.
  	 * - In guest partition the guest PFN has to be passed to the

base-commit: da3ea35007d0af457a0afc87e84fddaebc4e0b63
--
2.25.1






[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux