Messages in this thread |  | | Date | Sat, 6 Oct 2001 19:48:52 +0200 (CEST) | From | Mikulas Patocka <> | Subject | Re: %u-order allocation failed |
| |
On Sat, 6 Oct 2001, Rik van Riel wrote:
> On Sat, 6 Oct 2001, Mikulas Patocka wrote: > > On Sat, 6 Oct 2001, Rik van Riel wrote: > > > On Sat, 6 Oct 2001, Mikulas Patocka wrote: > > > > > > > Buddy allocator is broken - kill it. Or at least do not misuse it for > > > > anything except kernel or driver initialization. > > > > > > Please send patches to get rid of the buddy allocator while > > > still making it possible to allocate contiguous chunks of > > > memory. > > > > > > If you have any idea on how to fix things, this would be a > > > good time to let us know. > > > > Here goes the fix. (note that I didn't try to compile it so there may be > > bugs, but you see the point). > > So what are you going to do when your 64MB of vmalloc space > runs out ?
Make larger vmalloc space :-) Virtual memory costs very little. Besides 64M / 8k = 8192 - so it runs out at 8192 processes.
Of course vmalloc space can overflow - but it overflows only when the machine is overloaded with too many processes, too many processes with many filedescriptors etc. On the other hand, the buddy allocator fails *RANDOMLY*. Totally randomly, depending on cache access patterns and page allocation times.
Mikulas
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |