[SRU][B/D/OEM-B/OEM-OSP1-B][PATCH 0/1] x86/timer: Skip PIT initialization on modern chipsets

You-Sheng Yang vicamo.yang at canonical.com
Thu Nov 7 08:05:48 UTC 2019

From: You-Sheng Yang <vicamo at gmail.com>

BugLink: https://bugs.launchpad.net/bugs/1851216

Some recent platform seem to have an unstable HPET, which is used to
calibrate TSC but turns out to mark an actual stable TSC clocksource as
unstable, and then fallback to that unstable HPET as main clocksource. A
previous fix was proposed in bug 1840239, which is then observed to hang
platforms with modern chipsets including Skylake and ApolloLake at early
boot stage when HPET is disabled.

Commit c8c4076723da "x86/timer: Skip PIT initialization on modern chipsets"
included in v5.3-rc1 to be backported.

[Test Case]
Boot with kernel built with this change, and see if it will hang right
after grub loaded initramfs image.

[Regression Risk]
Low. This change detects the hardware that requires explicit PIT
initialization skip and skip it. For those unaffected systems, they
remain unaffected.

Thomas Gleixner (1):
  x86/timer: Skip PIT initialization on modern chipsets

 arch/x86/include/asm/apic.h    |  2 ++
 arch/x86/include/asm/time.h    |  1 +
 arch/x86/kernel/apic/apic.c    | 27 +++++++++++++++++++++++++++
 arch/x86/kernel/apic/io_apic.c |  4 ++++
 arch/x86/kernel/i8253.c        | 25 ++++++++++++++++++++++++-
 arch/x86/kernel/time.c         |  7 +++++--
 6 files changed, 63 insertions(+), 3 deletions(-)


More information about the kernel-team mailing list