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, Mar 18, 7:11 PM
Unknown Object (File)
Mon, Mar 18, 5:12 PM
Unknown Object (File)
Jan 12 2024, 7:47 PM
Unknown Object (File)
Jan 10 2024, 3:15 PM
Unknown Object (File)
Dec 4 2023, 9:07 AM
Unknown Object (File)
Aug 20 2023, 2:40 AM
Unknown Object (File)
May 6 2023, 2:21 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.)