xfs
[Top] [All Lists]

Re: %u-order allocation failed

To: Rik van Riel <riel@xxxxxxxxxxxxxxxx>
Subject: Re: %u-order allocation failed
From: Mikulas Patocka <mikulas@xxxxxxxxxxxxxxxxxxxxxxxx>
Date: Sat, 6 Oct 2001 16:00:21 +0200 (CEST)
Cc: Krzysztof Rusocki <kszysiu@xxxxxxxxxxxxxxxxx>, linux-xfs@xxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx
In-reply-to: <Pine.LNX.4.33L.0110050857080.4835-100000@imladris.rielhome.conectiva>
Reply-to: Mikulas Patocka <mikulas@xxxxxxxxxxxxxxxxxxxxxxxx>
Sender: owner-linux-xfs@xxxxxxxxxxx
> > After simple bash fork bombing (about 200 forks) on my UP Celeron/96MB
> > I get quite a lot %u-allocations failed, but only when swap is turned
> > off.
> 
> > I'm not familiar with LinuxVM.. so... is it normal behaviour ? or (if not)
> > what's happening when such messages are printed my kernel ?
> 
> This is perfectly normal behaviour:
> 
> 1) on your system, you have no process limit configured for
>    yourself so you can start processes until all resources
>    (memory, file descriptors, ...) are used
> 
> 2) when all processes are used, there really is no way the
>    kernel can buy you more hardware on ebay and install it
>    on the fly ... all it can do is start failing allocations
> 
> On production systems, good admins setup per-user limits for
> the various resources so no single user is able to run the
> system into the ground.

No, it's not normal. It is long-standing bug - I think from 2.2 kernels. 
You know that without swap and with certain memory allocation strategy
(when process in a loop allocates one anonymous page, one file cache page
and again...) this bug can be triggered even when there is half memory
free.

Buddy allocator is broken - kill it. Or at least do not misuse it for
anything except kernel or driver initialization.

Mikulas


<Prev in Thread] Current Thread [Next in Thread>