On Tue, May 11, 2021 at 6:59 PM Rafael J. Wysocki <rafael@xxxxxxxxxx> wrote: > > On Tue, May 11, 2021 at 5:21 PM Limonciello, Mario > <Mario.Limonciello@xxxxxxx> wrote: > > > > > Well, if find_deepest_state() looked at the target residency instead > > > of the exit latency, this would work I suppose? > > > > Unfortunately I don't think this would help - from an OEM system the following > > target residency values: > > > > # cat /sys/devices/system/cpu/cpu0/cpuidle/*/residency > > 0 > > 2 > > 800 > > 700 > > But this means that not just S0ix, but cpuidle in general doesn't work > correctly on those systems and the latency quirk doesn't help here. > > Well, it looks like the driver needs to sort the C-states table, then. But that wouldn't help, because the 700 us idle state is in fact deeper, right? Are the values just swapped or are they completely bogus?