Skip to content

drivers: hv: mshv_vtl: disable TSC_ADJUST handling for CONFIG_HYPERV_VTL_MODE#120

Merged
hargar19 merged 1 commit intomicrosoft:product/hcl-main/6.12from
Brian-Perkins:restore_partition_time_ignore_tsc_adjust
Apr 2, 2026
Merged

drivers: hv: mshv_vtl: disable TSC_ADJUST handling for CONFIG_HYPERV_VTL_MODE#120
hargar19 merged 1 commit intomicrosoft:product/hcl-main/6.12from
Brian-Perkins:restore_partition_time_ignore_tsc_adjust

Conversation

@Brian-Perkins
Copy link
Copy Markdown
Contributor

drivers: hv: mshv_vtl: TSC_ADJUST handling should not be needed for guests running in Hyper-V.

For backward compatibility, turn it off only when built with CONFIG_HYPERV_VTL_MODE. This addresses an issue where the TSC_ADJUST runtime checks would conflict with restore_partition_time handling that would adjust the global TSC value using a Hyper-V hypercall.

Copilot AI review requested due to automatic review settings March 26, 2026 22:05
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Disables x86 TSC_ADJUST-based synchronization/adjustment logic when running in Hyper-V Virtual Trust Level (VTL) mode, avoiding conflicts with Hyper-V’s partition time restore behavior.

Changes:

  • Clear X86_FEATURE_TSC_ADJUST during VTL platform initialization so TSC_ADJUST-dependent logic (e.g., periodic sync checks) is skipped.
  • Add an explanatory comment describing why TSC_ADJUST is disabled in this mode.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread arch/x86/hyperv/hv_vtl.c Outdated
@Brian-Perkins Brian-Perkins force-pushed the restore_partition_time_ignore_tsc_adjust branch from 17059c9 to a5735f3 Compare March 26, 2026 22:27
Copilot AI review requested due to automatic review settings March 30, 2026 19:39
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread arch/x86/hyperv/hv_vtl.c Outdated
…uests running in Hyper-V.

For backward compatibility, turn it off only when built with CONFIG_HYPERV_VTL_MODE.
This addresses an issue where the TSC_ADJUST runtime checks would conflict with
restore_partition_time handling that would adjust the global TSC value using a Hyper-V
hypercall.

Signed-off-by: Brian Perkins <brian.perkins@microsoft.com>
@Brian-Perkins Brian-Perkins force-pushed the restore_partition_time_ignore_tsc_adjust branch from 4191fee to 6c779fc Compare March 30, 2026 19:52
@dcui
Copy link
Copy Markdown
Contributor

dcui commented Apr 1, 2026

Looks good to me.

Copy link
Copy Markdown
Contributor

@dcui dcui left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

@hargar19 hargar19 merged commit aa10993 into microsoft:product/hcl-main/6.12 Apr 2, 2026
7 checks passed
benhillis pushed a commit to microsoft/openvmm that referenced this pull request Apr 5, 2026
TSC_ADJUST handling should not be needed for guests running in Hyper-V.

For backward compatibility, turn it off only when built with
CONFIG_HYPERV_VTL_MODE. This addresses an issue where the TSC_ADJUST
runtime checks would conflict with restore_partition_time handling that
would adjust the global TSC value using a Hyper-V hypercall.

Kernel change PR:
microsoft/OHCL-Linux-Kernel#120

Signed-off-by: Hardik Garg
[hargar@microsoft.com](mailto:hargar@microsoft.com)

Signed-off-by: Hardik Garg <hargar@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants