Re: tsc: Fast TSC calibration failed with AMD B350M/Ryzen 3 2200G

From: Paul Menzel
Date: Tue Jan 22 2019 - 11:53:46 EST


[Adding Tom to CC]

Dear Thomas, dear Tom,


On 01/14/19 11:09, Paul Menzel wrote:

> On 01/11/19 21:43, Thomas Gleixner wrote:
>
>> On Mon, 7 Jan 2019, Paul Menzel wrote:
>>> On 01/07/19 16:24, Thomas Gleixner wrote:
>>>>> Linux 4.19.13 from Debian Sid/unstable logs the message below on the board MSI
>>>>> MS-7A37/B350M MORTAR with the processor AMD Ryzen 3 2200G.
>>>>>
>>>>> As a result, the early time stamps do not seem to be working.
>>>>
>>>>>> [ 0.000000] DMI: Micro-Star International Co., Ltd. MS-7A37/B350M MORTAR (MS-7A37), BIOS 1.I0 11/06/2018
>>>>>> [ 0.000000] tsc: Fast TSC calibration failed
>>>>
>>>> And the further boot log says:
>>>>
>>>> [ 0.036000] tsc: Unable to calibrate against PIT
>>>> [ 0.036000] tsc: using HPET reference calibration
>>>> [ 0.036000] tsc: Detected 3500.117 MHz processor
>>>>
>>>> So the quick calibration in early boot fails because the PIT seems not to
>>>> do what the kernel expects. Nothing we can cure :(
>>>
>>> I see. Can AMD confirm that this is the expected behavior? If yes, should
>>> the fast TSC calibration be skipped on these devices?
>>
>> It should work and we really don't want to add cpu family/model based
>> decisions whether we invoke something or not. Those tables are stale before
>> they hit mainline.
>
> Understood. If itâs supposed to work, any hints on how to debug this?
>
> Does some Linux kernel developers have an AMD Ryzen system, and can reproduce
> the issue?
>
> It seems to fail with an AMD Ryzen 2400G too [1].

We now have an HP EliteDesk 705 G4 MT with that processsor, showing the same
problem.

```
[ 0.000000] Linux version 4.20.0.mx64.238 (root@xxxxxxxxxxxxxxxxxxxxxxx) (gcc version 7.3.0 (GCC)) #1 SMP Mon Dec 24 14:50:00 CET 2018
[â]
[ 0.000000] NX (Execute Disable) protection: active
[ 0.000000] SMBIOS 3.1 present.
[ 0.000000] DMI: HP HP EliteDesk 705 G4 MT/83E7, BIOS Q06 Ver. 02.04.01 09/14/2018
[ 0.000000] tsc: Fast TSC calibration failed
[ 0.000000] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[â]
[ 0.017860] smpboot: CPU0: AMD Ryzen 5 PRO 2400G with Radeon Vega Graphics (family: 0x17, model: 0x11, stepping: 0x0)
[â]
```

> It also fails on an AMD Ryzen 7 1700 [2].
>
> ```
> [ 0.000000] Linux version 4.15.0-kali3-amd64 (devel@xxxxxxxx) (gcc version 7.3.0 (Debian 7.3.0-16)) #1 SMP Debian 4.15.17-1kali1 (2018-04-25)
> [â]
> [ 0.008000] ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1
> [ 0.028000] tsc: Fast TSC calibration failed
> [ 0.032000] tsc: PIT calibration matches HPET. 1 loops
> [ 0.032000] tsc: Detected 2994.246 MHz processor
> [â]
> [ 0.044000] smpboot: CPU0: AMD Ryzen 7 1700 Eight-Core Processor (family: 0x17, model: 0x1, stepping: 0x1)
> ```
>
> It *works* here on one system with AMD Ryzen 5 PRO 1500 and Linux 4.14.87.
>
> ```
> [ 0.000000] Linux version 4.14.87.mx64.236 (root@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) (gcc version 7.3.0 (GCC)) #1 SMP Mon Dec 10 09:48:57 CET 2018
> [â]
> [ 0.000000] tsc: Fast TSC calibration using PIT
> [â]
> [ 0.035000] smpboot: CPU0: AMD Ryzen 5 PRO 1500 Quad-Core Processor (family: 0x17, model: 0x1, stepping: 0x1)
> ```

How to continue from here? Is documentation for that available from AMD?
I didnât find a BKDG (Bios Kernel Developer Guide) at [3].


Kind regards,

Paul


> [1]: https://bbs.archlinux.org/viewtopic.php?pid=1781282#p1781282
> [2]: https://forums.kali.org/showthread.php?40444-error-loading-amdgpu-drivers-AMD-RX580-driver[3]: https://developer.amd.com/resources/developer-guides-manuals/

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature