lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Tue, 28 Apr 2020 08:27:06 +0100
From:   Rui Salvaterra <rsalvaterra@...il.com>
To:     Giovanni Gherdovich <ggherdovich@...e.cz>
Cc:     x86@...nel.org, linux-kernel@...r.kernel.org
Subject: Re: [BISECTED] bug/regression, x86-64: completely unbootable machine

On Sat, 25 Apr 2020 at 17:01, Giovanni Gherdovich <ggherdovich@...e.cz> wrote:
>
> There is an easy way to tell (besides compiling with those patches on top and
> check if it works): run the command "turbostat --interval 1 sleep 0", the
> output should tell you the content of the register MSR_TURBO_RATIO_LIMIT.
>
> If bits 31:24 are zero, you see the bug (the code divides by that value),
> otherwise you don't. Some 2 cores / 4 threads CPU have a non-zero value there
> (even if it doesn't mean much), some others have zero instead.
>
> The Intel Software Developer Manual (SDM) says the register content is like
> this:
>
>     Bit Fields      Bit Description
>     7:0             Maximum turbo ratio limit of 1 core active.
>     15:8            Maximum turbo ratio limit of 2 core active.
>     23:16           Maximum turbo ratio limit of 3 core active.
>     31:24           Maximum turbo ratio limit of 4 core active.
>     39:32           Maximum turbo ratio limit of 5 core active.
>     47:40           Maximum turbo ratio limit of 6 core active.
>     55:48           Maximum turbo ratio limit of 7 core active.
>     63:56           Maximum turbo ratio limit of 8 core active.
>
> As I wrote above, some 2c/4t CPUs will say (correctly) their 4 cores turbo
> frequency is zero, such as this Intel Core i5-430M (Arrandale) where I've seen
> turbostat saying:
>
>     cpu1: MSR_TURBO_RATIO_LIMIT: 0x00001313
>     19 * 133.3 = 2533.3 MHz max turbo 2 active cores
>     19 * 133.3 = 2533.3 MHz max turbo 1 active cores
>
> On the contrary, my laptop has an Intel Core i5-5300U (Broadwell, also
> 2 cores / 4 threads) and it has:
>
>     cpu3: MSR_TURBO_RATIO_LIMIT: 0x1b1b1b1b1b1d
>     27 * 100.0 = 2700.0 MHz max turbo 6 active cores
>     27 * 100.0 = 2700.0 MHz max turbo 5 active cores
>     27 * 100.0 = 2700.0 MHz max turbo 4 active cores
>     27 * 100.0 = 2700.0 MHz max turbo 3 active cores
>     27 * 100.0 = 2700.0 MHz max turbo 2 active cores
>     29 * 100.0 = 2900.0 MHz max turbo 1 active cores
>
> You can see above that the 4 cores turbo freq is declared as 2.7GHz even if
> it's nonsense because there aren't 4 cores. In any case, this cpu wouldn't
> trigger the bug, just as your skylake.
>
>
> Thanks,
> Giovanni

Hi again, Giovanni,

Thanks for the detailed and insightful explanation and sorry for not
replying earlier. This was indeed the bug I was hitting, as my
Arrandale laptop is now booting 5.7-rc3 just fine.

Best regards,
Rui

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ