Re: [RFC 00/60] Coscheduling for Linux
From: Jan H. SchÃnherr
Date: Wed Sep 26 2018 - 05:58:28 EST
On 09/17/2018 02:25 PM, Peter Zijlstra wrote:
> On Fri, Sep 14, 2018 at 06:25:44PM +0200, Jan H. SchÃnherr wrote:
>
>> Assuming, there is a cgroup-less solution that can prevent simultaneous
>> execution of tasks on a core, when they're not supposed to. How would you
>> tell the scheduler, which tasks these are?
>
> Specifically for L1TF I hooked into/extended KVM's preempt_notifier
> registration interface, which tells us which tasks are VCPUs and to
> which VM they belong.
>
> But if we want to actually expose this to userspace, we can either do a
> prctl() or extend struct sched_attr.
Both, Peter and Subhra, seem to prefer an interface different than cgroups
to specify what to coschedule.
Can you provide some extra motivation for me, why you feel that way?
(ignoring the current scalability issues with the cpu group controller)
After all, cgroups where designed to create arbitrary groups of tasks and
to attach functionality to those groups.
If we were to introduce a different interface to control that, we'd need to
introduce a whole new group concept, so that you make tasks part of some
group while at the same time preventing unauthorized tasks from joining a
group.
I currently don't see any wins, just a loss in flexibility.
Regards
Jan