Re: [patch V4 4/8] sched: Make migrate_disable/enable() independent of RT
From: Peter Zijlstra
Date: Thu Nov 19 2020 - 13:29:12 EST
On Thu, Nov 19, 2020 at 09:23:47AM -0800, Linus Torvalds wrote:
> On Thu, Nov 19, 2020 at 3:14 AM Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> >
> > I still hate all of this, and I really fear that with migrate_disable()
> > available, people will be lazy and usage will increase :/
> >
> > Case at hand is this series, the only reason we need it here is because
> > per-cpu page-tables are expensive...
>
> No, I think you as a scheduler person just need to accept it.
Well, I did do write the patches.
> Because this is certainly not the only time migration limiting has
> come up, and no, it has absolutely nothing to do with per-cpu page
> tables being completely unacceptable.
It is for this instance; but sure, it's come up before in other
contexts.
> The scheduler people need to get used to this. Really. Because ASMP is
> just going to be a fact.
ASMP is different in that it is a hardware constraint, you're just not
going to be able to run more of X than there's X capable hardware units
on (be if FPUs, Vector units, 32bit or whatever)
> There are few things more futile than railing against reality, Peter.
But, but, my windmills! :-)
> Honestly, the only argument I've ever heard against limiting migration
> is the whole "our scheduling theory doesn't cover it".
>
> So either throw the broken theory away, or live with it. Theory that
> doesn't match reality isn't theory, it's religion.
The first stage of throwing it out is understanding the problem, which
is just about where we're at. Next is creating a new formalism (if
possible) that covers this new issue. That might take a while.
Thing is though; without a formalism to reason about timeliness
guarantees, there is no Real-Time.
So sure, I've written the patches, doesn't mean I have to like the place
we're in due to it.