[RFC PATCH v4 00/17] Paravirt CPUs and push task for less vCPU preemption
Shrikanth Hegde
sshegde at linux.ibm.com
Wed Nov 19 23:53:33 AEDT 2025
On 11/19/25 11:50 AM, Shrikanth Hegde wrote:
> Detailed problem statement and some of the implementation choices were
> discussed earlier[1].
>
> [1]: https://lore.kernel.org/all/20250910174210.1969750-1-sshegde@linux.ibm.com/
>
> This is likely the version which would be used for LPC2025 discussion on
> this topic. Feel free to provide your suggestion and hoping for a solution
> that works for different architectures and it's use cases.
>
> All the existing alternatives such as cpu hotplug, creating isolated
> partitions etc break the user affinity. Since number of CPUs to use change
> depending on the steal time, it is not driven by User. Hence it would be
> wrong to break the affinity. This series allows if the task is pinned
> only paravirt CPUs, it will continue running there.
>
> Changes compared v3[1]:
>
> - Introduced computation of steal time in powerpc code.
> - Derive number of CPUs to use and mark the remaining as paravirt based
> on steal values.
> - Provide debugfs knobs to alter how steal time values being used.
> - Removed static key check for paravirt CPUs (Yury)
> - Removed preempt_disable/enable while calling stopper (Prateek)
> - Made select_idle_sibling and friends aware of paravirt CPUs.
> - Removed 3 unused schedstat fields and introduced 2 related to paravirt
> handling.
> - Handled nohz_full case by enabling tick on it when there is CFS/RT on
> it.
> - Updated helper patch to override arch behaviour for easier debugging
> during development.
Sorry for creating confusion around last two patches. Sent out new version.
https://lore.kernel.org/all/20251119124449.1149616-1-sshegde@linux.ibm.com/
More information about the Linuxppc-dev
mailing list