Messages in this thread | | | Date | Thu, 19 Oct 2017 14:18:59 +1100 | From | Balbir Singh <> | Subject | Re: [PATCH] mm: mlock: remove lru_add_drain_all() |
| |
On Wed, 18 Oct 2017 16:17:30 -0700 Shakeel Butt <shakeelb@google.com> wrote:
> Recently we have observed high latency in mlock() in our generic > library and noticed that users have started using tmpfs files even > without swap and the latency was due to expensive remote LRU cache > draining. > > Is lru_add_drain_all() required by mlock()? The answer is no and the > reason it is still in mlock() is to rapidly move mlocked pages to > unevictable LRU. Without lru_add_drain_all() the mlocked pages which > were on pagevec at mlock() time will be moved to evictable LRUs but > will eventually be moved back to unevictable LRU by reclaim. So, we > can safely remove lru_add_drain_all() from mlock(). Also there is no > need for local lru_add_drain() as it will be called deep inside > __mm_populate() (in follow_page_pte()). > > Signed-off-by: Shakeel Butt <shakeelb@google.com> > ---
Does this perturb statistics around LRU pages in cgroups and meminfo about where the pages actually belong?
Balbir Singh.
| |