Page MenuHomeFreeBSD

TSC: Use 0x40000010 CPUID leaf for all VM types
ClosedPublic

Authored by cperciva on Jan 14 2022, 6:32 AM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Dec 30, 10:03 PM
Unknown Object (File)
Dec 3 2024, 12:27 AM
Unknown Object (File)
Oct 29 2024, 4:59 AM
Unknown Object (File)
Oct 1 2024, 6:56 PM
Unknown Object (File)
Sep 17 2024, 1:59 AM
Unknown Object (File)
Sep 13 2024, 4:41 AM
Unknown Object (File)
Sep 11 2024, 7:38 PM
Unknown Object (File)
Sep 6 2024, 2:47 PM
Subscribers

Details

Reviewers
markj
Summary

While this CPUID leaf was originally only used by VMWare, other
hypervisors now also use it to announce the TSC frequency to guests.

This speeds up the boot process by 100 ms in EC2 and other systems,
by allowing the early calibration DELAY to be skipped.

Sponsored by: https://www.patreon.com/cperciva

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 43933
Build 40821: arc lint + arc unit

Event Timeline

This revision is now accepted and ready to land.Jan 14 2022, 2:50 PM
sys/x86/x86/tsc.c
134

I think this multiplication can overflow, actually. The RHS is promoted after the multiplication.

This revision now requires review to proceed.Jan 14 2022, 9:47 PM
sys/x86/x86/tsc.c
134

Thanks, fixed!

This revision is now accepted and ready to land.Jan 14 2022, 11:28 PM

Committed. (I forgot to include the Differential Revision tag in the commit message.)