Page MenuHomeFreeBSD

x86: Fall back to leaf 0x16 if TSC frequency is obtained by CPUID and leaf 0x15 is not functional.
ClosedPublic

Authored by kib on Sep 24 2019, 10:22 AM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Apr 13, 2:44 PM
Unknown Object (File)
Sat, Apr 13, 11:00 AM
Unknown Object (File)
Fri, Mar 29, 2:57 PM
Unknown Object (File)
Mar 19 2024, 1:59 AM
Unknown Object (File)
Mar 6 2024, 8:09 PM
Unknown Object (File)
Feb 2 2024, 7:10 PM
Unknown Object (File)
Jan 16 2024, 2:58 AM
Unknown Object (File)
Jan 8 2024, 9:29 AM
Subscribers

Details

Summary

This should improve automatic TSC frequency determination on Skylake/Kabylake/... families, where 0x15 exists but does not provide all necessary information. SDM contains relatively strong wording against such uses of 0x16, but Intel does not give us any other way to obtain the frequency. Linux did the same in the commit 604dc9170f2435d27da5039a3efd757dceadc684

Based on submission by: Neel Chauhan <neel@neelc.org>
PR: 240475

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

markj added inline comments.
sys/x86/x86/tsc.c
139 ↗(On Diff #62499)

"the SDM"

140 ↗(On Diff #62499)

Should be "did not work".

This revision is now accepted and ready to land.Sep 24 2019, 3:17 PM