Re: [PATCH] mm,page_alloc: Split stall warning and failure warning.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Apr 19, 2017 at 03:33:39PM +0200, Michal Hocko wrote:
> On Wed 19-04-17 15:22:16, Stanislaw Gruszka wrote:
> > On Wed, Apr 19, 2017 at 01:13:43PM +0200, Michal Hocko wrote:
> > > On Tue 18-04-17 14:47:32, David Rientjes wrote:
> > > [...]
> > > > I think the debug_guardpage_minorder() check makes sense for failed 
> > > > allocations because we are essentially removing memory from the system for 
> > > > debug, failed allocations as a result of low on memory or fragmentation 
> > > > aren't concerning if we are removing memory from the system.
> > > 
> > > I really fail to see how this is any different from booting with
> > > mem=$SIZE to reduce the amount of available memory.
> > 
> > mem= shrink upper memory limit, debug_guardpage_minorder= fragments
> > available physical memory (deliberately to catch unintended access).
> 
> Yeah but both make allocation failures (especially higher order ones)
> more likely. So I really fail to see the point inhibit allocation
> failure warning for one and not for the other.

There is difference for buddy allocator. If you limit to 1/2 of memory
such only upper half is not available, buddy allocator can easily find
pages for higher order allocations in lower half of memory.
When you limit to 1/2 of memory such every second page is not available,
buddy allocator can not make successful any order 1 or higher
allocations.

> This whole special casing
> of debug_guardpage_minorder is just too strange to me. We do have a rate
> limit to not flood the log.

I added this check to skip warning if buddy allocator fail, what I
considered likely scenario taking the conditions. The check remove
warning completely, rate limit only limit the speed warnings shows in
logs.

Stanislaw

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]
  Powered by Linux