On Wed 09-09-20 09:19:16, Rik van Riel wrote: > On Wed, 2020-09-09 at 09:04 +0200, Michal Hocko wrote: > > On Tue 08-09-20 10:41:10, Rik van Riel wrote: > > > On Tue, 2020-09-08 at 16:35 +0200, Michal Hocko wrote: > > > > > > > A global knob is insufficient. 1G pages will become a very > > > > precious > > > > resource as it requires a pre-allocation (reservation). So it > > > > really > > > > has > > > > to be an opt-in and the question is whether there is also some > > > > sort > > > > of > > > > access control needed. > > > > > > The 1GB pages do not require that much in the way of > > > pre-allocation. The memory can be obtained through CMA, > > > which means it can be used for movable 4kB and 2MB > > > allocations when not > > > being used for 1GB pages. > > > > That CMA has to be pre-reserved, right? That requires a > > configuration. > > To some extent, yes. > > However, because that pool can be used for movable > 4kB and 2MB > pages as well as for 1GB pages, it would be easy to just set > the size of that pool to eg. 1/3 or even 1/2 of memory for every > system. > > It isn't like the pool needs to be the exact right size. We > just need to avoid the "highmem problem" of having too little > memory for kernel allocations. Which is the problem why this is not really suitable for an uneducated guesses. It is really hard to guess the right amount of lowmem. Think of heavy fs metadata workloads and their memory demand. Memory reclaim usually struggles when zones are imbalanced from my experience. -- Michal Hocko SUSE Labs