[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200310091637.GC8447@dhcp22.suse.cz>
Date: Tue, 10 Mar 2020 10:16:37 +0100
From: Michal Hocko <mhocko@...nel.org>
To: Arnd Bergmann <arnd@...db.de>
Cc: Russell King - ARM Linux admin <linux@...linux.org.uk>,
Nishanth Menon <nm@...com>,
Santosh Shilimkar <santosh.shilimkar@...cle.com>,
Tero Kristo <t-kristo@...com>,
Linux ARM <linux-arm-kernel@...ts.infradead.org>,
Rik van Riel <riel@...riel.com>,
Catalin Marinas <catalin.marinas@....com>,
Santosh Shilimkar <ssantosh@...nel.org>,
Dave Chinner <david@...morbit.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux-MM <linux-mm@...ck.org>,
Yafang Shao <laoar.shao@...il.com>,
Al Viro <viro@...iv.linux.org.uk>,
Johannes Weiner <hannes@...xchg.org>,
linux-fsdevel <linux-fsdevel@...r.kernel.org>,
kernel-team@...com, Kishon Vijay Abraham I <kishon@...com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Roman Gushchin <guro@...com>
Subject: Re: [PATCH] vfs: keep inodes with page cache off the inode shrinker
LRU
I am worried this went quite tangent to the original patch under
discussion here, but let me clarify at least one point.
On Mon 09-03-20 16:04:54, Arnd Bergmann wrote:
> On Mon, Mar 9, 2020 at 3:05 PM Russell King - ARM Linux admin
[...]
> > What happened to requests for memory from highmem being able to be
> > sourced from lowmem if highmem wasn't available? That used to be
> > standard kernel behaviour.
>
> AFAICT this is how it's supposed to work, but for some reason it
> doesn't always. I don't know the details, but have heard of recent
> complaints about it. I don't think it's the actual get_free_pages
> failing, but rather some heuristic looking at the number of free pages.
This is indeed the case. There are low memory reserves which are not
allowed for requests which can be satisfied from higher zones. This is
the case for many many years. Just have a look at lowmem_reserve and
their usage in __zone_watermark_ok. The layout of the reserves can be
configured by /proc/sys/vm/lowmem_reserve_ratio.
HTH
--
Michal Hocko
SUSE Labs
Powered by blists - more mailing lists