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] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJZ5v0jaAN+UF6u8WLVXmO5k0MfFNL1ToM46bS5RbZ+Gwp3EWA@mail.gmail.com>
Date: Mon, 19 Jan 2026 13:09:08 +0100
From: "Rafael J. Wysocki" <rafael@...nel.org>
To: Christian Loehle <christian.loehle@....com>
Cc: "Rafael J. Wysocki" <rafael@...nel.org>, Linux PM <linux-pm@...r.kernel.org>, 
	LKML <linux-kernel@...r.kernel.org>, Doug Smythies <dsmythies@...us.net>
Subject: Re: [PATCH v1 0/5] cpuidle: governors: teo: Wakeup events
 classification change and some refinements

On Mon, Jan 19, 2026 at 10:53 AM Christian Loehle
<christian.loehle@....com> wrote:
>
> On 1/16/26 12:29, Rafael J. Wysocki wrote:
> > On Fri, Jan 16, 2026 at 12:52 PM Christian Loehle
> > <christian.loehle@....com> wrote:
> >>
> >> On 1/14/26 19:42, Rafael J. Wysocki wrote:
> >>> Hi All,
> >>>
> >>> This material has been in my local queue for almost a full development cycle,
> >>> so time to post it.
> >>>
> >>> The motivation for the changes in this series is mostly theoretical, but I do
> >>> see some idle power improvements from patch [4/5], for example, but nothing
> >>> specifically worth reporting.
> >>>
> >>> The first patch simply prevents idle states with zero-size bins from being
> >>> selected sometimes when teo_select() runs with stopped tick.
> >>>
> >>> Patch [2/5] avoids counting tick wakeups as intercepts unless there are
> >>> sufficiently many intercepts within the tick period range to assume that
> >>> the tick wakeup may have clobbered a genuine intercept.
> >>>
> >>> Patch [3/5] simply updates a coefficient in one of the inequalities to be
> >>> somewhat easier to interpret (this should be a cosmetic change).
> >>>
> >>> Patch [4/5] changes the criteria used for classifying wakeup events as hits
> >>> or intercepts to (hopefully) make the classification work better for large
> >>> state bins.
> >>>
> >>> Patch [5/5] refines the idle state lookup based on intercepts to first
> >>> consider the state with the maximum intercepts metric, so that state is
> >>> always taken into consideration.
> >>>
> >>> Please see the individual patch changelogs for details.
> >>>
> >>> Thanks!
> >>>
> >>>
> >
> > Hi Christian,
> >
> >> Hi Rafael,
> >> I'll do the in-depth review, but have run some tests already.
> >> They are attached, platform is the usual rk3399.
> >> "teo" is mainline, "teo-$i" is with patches 1..$i applied.
> >
> > Thanks for testing!
> >
> >> There's a regression on teo-4 visible on the intercept heavy IO workloads,
> >> for idle misses that isn't strong enough to reflect in score changes except
> >> for the very slow mtdblock device.
> >> interestingly though there also seems to be a regression in
> >> mapper/dm-slow (dm device with 51ms delay on each IO), which is not
> >> intercept heavy.
> >> Looking at the state residencies it overuses the deepest state2 in
> >> where state1 was preferred for the other teo variants.
> >> I've attached that too for reference.
> >> I'm assuming that is because of the new intercept-logic-exclusion clause.
> >
> > So can you please restore that clause to its previous form, while
> > keeping the other changes in patch 4, and see if the regression is
> > still there?
> >
>
> Yep that restores it, I've attached the full results again with teo-4-p and teo-5-p
> being teo-4 and teo-5 but with
> -       if (2 * idx_intercept_sum > cpu_data->total) {
> +       if (2 * idx_intercept_sum > cpu_data->total - idx_hit_sum) {
>
> respectively.
>
> To highlight let me just quote the schbench results
> test       gov        i     score  %change    idles  idle_miss  miss_rt   belows   aboves
> schbench   teo-4      0    295.87    +5.51%    29014     1309    0.045     1168      141
> schbench   teo-4      1    302.20    +7.76%    31642     1408    0.044     1105      303
> schbench   teo-4      2    301.07    +7.36%    29966     1602    0.053     1393      209
> schbench   teo-4      3    297.00    +5.91%    29982     1529    0.051     1266      263
> schbench   teo-4      4    297.20    +5.98%    29432     1419    0.048     1194      225
> schbench   teo-4      5    299.47    +6.79%    30262     1381    0.046     1189      192
> schbench   teo-4      6    301.23    +7.42%    29810     1469    0.049     1234      235
> schbench   teo-4      7    301.00    +7.34%    29916     1511    0.051     1355      156
> schbench   teo-4      8    299.17    +6.68%    29246     1444    0.049     1296      148
> schbench   teo-4      9    297.77    +6.18%    30306     1399    0.046     1195      204
> schbench   teo-4      10   304.03    +8.42%    30904     1346    0.044     1163      183
> schbench   teo-4      11   300.73    +7.24%    30716     1276    0.042     1089      187
> schbench   teo-4      12   298.13    +6.31%    29872     1314    0.044     1081      233
> schbench   teo-4      13   298.73    +6.53%    30386     1288    0.042     1092      196
> schbench   teo-4      14   300.77    +7.25%    30150     1323    0.044     1074      249
> schbench   teo-4      15   296.23    +5.63%    32178     1328    0.041     1061      267
> schbench   teo-4      16   283.50    +1.09%    27472     1282    0.047     1126      156
> schbench   teo-4      17   300.53    +7.17%    29644     1552    0.052     1375      177
> schbench   teo-4      18   302.23    +7.77%    31456     1418    0.045     1194      224
> schbench   teo-4      19   307.43    +9.63%    32518     1259    0.039      968      291
> schbench   teo-4-p    0    277.53    -1.03%    28054      503    0.018      151      352
> schbench   teo-4-p    1    304.07    +8.43%    30650      553    0.018      178      375
> schbench   teo-4-p    2    273.73    -2.39%    27120      509    0.019      163      346
> schbench   teo-4-p    3    300.20    +7.05%    29932      528    0.018      171      357
> schbench   teo-4-p    4    300.00    +6.98%    29580      584    0.020      180      404
> schbench   teo-4-p    5    296.03    +5.56%    30176      514    0.017      172      342
> schbench   teo-4-p    6    300.50    +7.16%    29806      550    0.018      174      376
> schbench   teo-4-p    7    271.07    -3.34%    26934      472    0.018      165      307
> schbench   teo-4-p    8    299.00    +6.62%    30568      564    0.018      175      389
> schbench   teo-4-p    9    300.80    +7.26%    29660      482    0.016      188      294
> schbench   teo-4-p    10   300.57    +7.18%    30384      634    0.021      195      439
> schbench   teo-4-p    11   296.53    +5.74%    29590      599    0.020      221      378
> schbench   teo-4-p    12   298.77    +6.54%    30664      599    0.020      177      422
> schbench   teo-4-p    13   302.47    +7.86%    30200      559    0.019      223      336
> schbench   teo-4-p    14   300.43    +7.13%    30326      562    0.019      166      396
> schbench   teo-4-p    15   292.87    +4.44%    28798      524    0.018      142      382
> schbench   teo-4-p    16   299.63    +6.85%    29718      535    0.018      189      346
> schbench   teo-4-p    17   302.10    +7.73%    31122      584    0.019      221      363
> schbench   teo-4-p    18   294.13    +4.89%    28312      560    0.020      167      393
> schbench   teo-4-p    19   302.20    +7.76%    29872      556    0.019      168      388
> schbench   teo-5      0    299.53    +6.81%    31198     1312    0.042     1062      250
> schbench   teo-5      1    296.67    +5.79%    30090     1383    0.046     1169      214
> schbench   teo-5      2    299.60    +6.84%    30010     1566    0.052     1331      235
> schbench   teo-5      3    300.00    +6.98%    30764     1466    0.048     1239      227
> schbench   teo-5      4    298.77    +6.54%    30002     1383    0.046     1212      171
> schbench   teo-5      5    299.30    +6.73%    29848     1481    0.050     1288      193
> schbench   teo-5      6    298.90    +6.59%    29586     1441    0.049     1260      181
> schbench   teo-5      7    300.37    +7.11%    30672     1460    0.048     1306      154
> schbench   teo-5      8    301.00    +7.34%    31454     1383    0.044     1190      193
> schbench   teo-5      9    298.80    +6.55%    30042     1415    0.047     1194      221
> schbench   teo-5      10   302.23    +7.77%    30986     1305    0.042     1066      239
> schbench   teo-5      11   297.30    +6.02%    30112     1405    0.047     1190      215
> schbench   teo-5      12   299.33    +6.74%    29536     1482    0.050     1214      268
> schbench   teo-5      13   288.87    +3.01%    28754     1244    0.043     1038      206
> schbench   teo-5      14   300.17    +7.04%    30232     1517    0.050     1300      217
> schbench   teo-5      15   301.43    +7.49%    30578     1576    0.052     1287      289
> schbench   teo-5      16   282.10    +0.60%    29106      996    0.034      834      162
> schbench   teo-5      17   278.03    -0.86%    27432     1123    0.041      926      197
> schbench   teo-5      18   304.40    +8.55%    29934     1526    0.051     1296      230
> schbench   teo-5      19   276.50    -1.40%    28072     1158    0.041      970      188
> schbench   teo-5-p    0    299.47    +6.79%    29994      587    0.020      231      356
> schbench   teo-5-p    1    298.27    +6.36%    31600      555    0.018      190      365
> schbench   teo-5-p    2    297.20    +5.98%    30350      543    0.018      198      345
> schbench   teo-5-p    3    294.30    +4.95%    29962      523    0.017      192      331
> schbench   teo-5-p    4    303.30    +8.16%    30366      480    0.016      160      320
> schbench   teo-5-p    5    298.87    +6.58%    29838      541    0.018      180      361
> schbench   teo-5-p    6    301.63    +7.56%    30022      480    0.016      168      312
> schbench   teo-5-p    7    298.47    +6.43%    30210      581    0.019      202      379
> schbench   teo-5-p    8    298.77    +6.54%    30636      529    0.017      210      319
> schbench   teo-5-p    9    298.63    +6.49%    30474      564    0.019      185      379
> schbench   teo-5-p    10   300.10    +7.01%    30808      577    0.019      251      326
> schbench   teo-5-p    11   295.87    +5.51%    30190      565    0.019      186      379
> schbench   teo-5-p    12   301.27    +7.43%    29958      466    0.016      160      306
> schbench   teo-5-p    13   280.83    +0.14%    27916      494    0.018      164      330
> schbench   teo-5-p    14   294.23    +4.92%    30330      611    0.020      219      392
> schbench   teo-5-p    15   297.13    +5.96%    30728      656    0.021      195      461
> schbench   teo-5-p    16   297.97    +6.25%    30242      524    0.017      178      346
> schbench   teo-5-p    17   301.27    +7.43%    31004      524    0.017      208      316
> schbench   teo-5-p    18   297.97    +6.25%    29864      565    0.019      211      354
> schbench   teo-5-p    19   298.43    +6.42%    30462      519    0.017      150      369
>
> The -p variants have less than half the idle_misses and fall into the same order of magnitude
> for this test than all the other teo variants.

Thanks for the data!

I'll send an update of patch 4 without the intercept-logic-exclusion clause.

I thought that it would be necessary, but that does not turn out to be the case.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ