lists.openwall.net   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  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Thu, 19 Oct 2017 22:53:12 +0200
From:   Michal Hocko <mhocko@...nel.org>
To:     Shakeel Butt <shakeelb@...gle.com>
Cc:     Andrew Morton <akpm@...ux-foundation.org>,
        "Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>,
        Vlastimil Babka <vbabka@...e.cz>,
        Joonsoo Kim <iamjoonsoo.kim@....com>,
        Minchan Kim <minchan@...nel.org>,
        Yisheng Xie <xieyisheng1@...wei.com>,
        Ingo Molnar <mingo@...nel.org>,
        Greg Thelen <gthelen@...gle.com>,
        Hugh Dickins <hughd@...gle.com>, Linux MM <linux-mm@...ck.org>,
        LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] mm: mlock: remove lru_add_drain_all()

On Thu 19-10-17 13:14:52, Shakeel Butt wrote:
> On Thu, Oct 19, 2017 at 1:13 PM, Michal Hocko <mhocko@...nel.org> wrote:
> > On Thu 19-10-17 12:46:50, Shakeel Butt wrote:
> >> > [...]
> >> >>
> >> >> Sorry for the confusion. I wanted to say that if the pages which are
> >> >> being mlocked are on caches of remote cpus then lru_add_drain_all will
> >> >> move them to their corresponding LRUs and then remaining functionality
> >> >> of mlock will move them again from their evictable LRUs to unevictable
> >> >> LRU.
> >> >
> >> > yes, but the point is that we are draining pages which might be not
> >> > directly related to pages which _will_ be mlocked by the syscall. In
> >> > fact those will stay on the cache. This is the primary reason why this
> >> > draining doesn't make much sense.
> >> >
> >> > Or am I still misunderstanding what you are saying here?
> >> >
> >>
> >> lru_add_drain_all() will drain everything irrespective if those pages
> >> are being mlocked or not.
> >
> > yes, let me be more specific. lru_add_drain_all will drain everything
> > that has been cached at the time mlock is called. And that is not really
> > related to the memory which will be faulted in (and cached) and mlocked
> > by the syscall itself. Does it make more sense now?
> >
> 
> Yes, you are absolutely right. Sorry for the confusion.

So I think it would be much better to justify this change by arguing
that paying a random overhead for something that doesn't relate to the
work to be done is simply wrong.

-- 
Michal Hocko
SUSE Labs

Powered by blists - more mailing lists