[PATCH 0/2] Fix community TSC ADJUST breakage causing TSC failure

From: Mike Travis
Date: Mon Oct 01 2018 - 21:29:58 EST



Fix a breakage caused by enabling early tsc initialization which bypasses
a check that disables the forcing of TSC ADJUST to 0 for chassis 0.
This is common on systems where all the chassis start up asynchronously
so which chassis should have a TSC ADJUST value of 0 is not predictable.

The solution is to add a check earlier than this early tsc init to
disable the potential of it incorrectly adjusting TSC ADJUST values that
are already correctly initialized.

* Patch 1 adds an early callable function (right after efi_init) that
will check if this system might be a UV system.

* Patch 2 adds code into setup_arch() which disables the call to
tsc_early_init. This function calls the TSC adjust initialization
functions before UV setup has checked if BIOS has set the multi-chassis
sync flags. Further references are in the patch.

--