Re: config SCHED_CORE

From: Randy Dunlap
Date: Fri May 21 2021 - 12:10:00 EST


On 5/21/21 12:53 AM, Peter Zijlstra wrote:
> On Thu, May 20, 2021 at 08:06:07PM -0700, Hugh Dickins wrote:
>> Hi Peter,
>>
>> make oldconfig gave me no help at all on how to decide whether to choose
>> SCHED_CORE Y or n, beyond it recommending Y. Maybe you'll delete that
>> option later, or maybe removing the prompt string would silence it.
>
> Ah, you're quite right. I never seem to have gotten around to actually
> writing anything useful there :/ Similarly the documentation for all
> this seems to have gone missing too.
>
> Joel, could I ask you to refresh the document to match the current state
> of things and repost? I still whole hartedly despise this RST crud, it
> makes it so hard to read / modify the files.
>
> ( I think the latest version is here:
> https://lkml.kernel.org/r/20210324214020.34142-8-joel@xxxxxxxxxxxxxxxxx
> )
>
> Anyway, how is something like the below, Joel can add a reference to the
> document once it's there.
>
> ---
> kernel/Kconfig.preempt | 14 +++++++++++++-
> 1 file changed, 13 insertions(+), 1 deletion(-)
>
> diff --git a/kernel/Kconfig.preempt b/kernel/Kconfig.preempt
> index ea1e3331c0ba..3c4566cd20ef 100644
> --- a/kernel/Kconfig.preempt
> +++ b/kernel/Kconfig.preempt
> @@ -104,4 +104,16 @@ config SCHED_CORE
> bool "Core Scheduling for SMT"
> default y
> depends on SCHED_SMT
> -
> + help
> + This option enables Core scheduling, a means of coordinated task
> + selection across SMT siblings with the express purpose of creating a
> + Core wide privilidge boundary. When enabled -- see prctl(PR_SCHED_CORE)

privilege
while you are at it.

> + -- task selection will ensure all SMT siblings will execute a task
> + from the same 'core group', forcing idle when no matching task is found.
> +
> + This provides means of mitigation against a number of SMT side-channels;
> + but is, on its own, insufficient to mitigate all known side-channels.
> + Notable: the MDS class of attacks require more.
> +
> + Default enabled for anything that has SCHED_SMT, when unused there should
> + be no impact on performance.
>


--
~Randy