Message ID | 20241108122909.763663-1-patryk.wlazlyn@linux.intel.com |
---|---|
Headers | show |
Series | SRF: Fix offline CPU preventing pc6 entry | expand |
On Tue, Nov 12 2024 at 12:28, Rafael J. Wysocki wrote: > On Tue, Nov 12, 2024 at 12:18 PM Patryk Wlazlyn > <patryk.wlazlyn@linux.intel.com> wrote: >> I don't think so. The old algorithm gives fairly good heuristic for computing >> the mwait hint for the deepest cstate. Even though it's not guaranteed to work, >> it does work on most of the platforms that don't early return. I think we should >> leave it, but prefer idle_driver. > > IOW, as a fallback mechanism, it is as good as it gets. > > As the primary source of information though, not quite. So we have at least 5 places in the kernel which evaluate CPUID leaf 0x5 in different ways. Can we please have _ONE_ function which evaluates the leaf correctly once and provides the required information for all places ready to use? Thanks, tglx
> That's not really working: > > 1) Regular kexec offlines them again. But then, they execute hlt loop in the reboot vector right? I think that's fine. We just don't want to be woken up from the mwait when the RIP points to garbage. > 2) Kexec in panic can't do any of that. Does it make sense to change the kexec, so that every CPU is forced into the reboot vector, which I believe happens for online CPUs? We don't have to online them all the way. Maybe minimal bringup just to be able to send them the IPI? As a side note, It's not that important for this patchset. I think I can make it work without simplifying the existing hack, but crossed my mind at some point that maybe we could do that.