lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Fri, 20 Nov 2020 02:33:58 +0100
From:   Thomas Gleixner <>
To:     Peter Zijlstra <>,
        Linus Torvalds <>
Cc:     Mel Gorman <>, LKML <>,
        the arch/x86 maintainers <>,
        Christoph Hellwig <>,
        Matthew Wilcox <>,
        Daniel Vetter <>,
        Andrew Morton <>,
        Linux-MM <>, Ingo Molnar <>,
        Juri Lelli <>,
        Vincent Guittot <>,
        Dietmar Eggemann <>,
        Steven Rostedt <>,
        Ben Segall <>,
        Daniel Bristot de Oliveira <>
Subject: Re: [patch V4 4/8] sched: Make migrate_disable/enable() independent of RT

On Thu, Nov 19 2020 at 19:28, Peter Zijlstra wrote:
> On Thu, Nov 19, 2020 at 09:23:47AM -0800, Linus Torvalds wrote:
>> 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.

Indeed. And one of the really bad outcomes of this is that people are
forced to use preempt_disable() to prevent migration which entails a
slew of consequences:

     - Using spinlocks where it wouldn't be needed otherwise
     - Spinwaiting instead of sleeping
     - The whole crazyness of doing copy_to/from_user_in_atomic() along
       with the necessary out of line error handling.
     - ....

The introduction of per-cpu storage happened almost 20 years ago (2002)
and still the only answer we have is preempt_disable().

I know the scheduling theory folks still try to wrap their heads around
the introduction of SMP which dates back to 1962 IIRC...

>> 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)

ASMP is as old as SMP. The first SMP systems were in fact ASMP.  The
reasons for ASMP 60 years ago were not that different from the reasons
for ASMP today. Just the scale and the effectivness are different.

>> There are few things more futile than railing against reality, Peter.
> But, but, my windmills! :-)

At least you have windmills where you live so you can pull off the real
Don Quixote while other people have to find substitutes :)



Powered by blists - more mailing lists