From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759645AbXEQSC7 (ORCPT ); Thu, 17 May 2007 14:02:59 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1755706AbXEQSCw (ORCPT ); Thu, 17 May 2007 14:02:52 -0400 Received: from netops-testserver-3-out.sgi.com ([192.48.171.28]:54643 "EHLO relay.sgi.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754439AbXEQSCv (ORCPT ); Thu, 17 May 2007 14:02:51 -0400 Date: Thu, 17 May 2007 11:02:51 -0700 (PDT) From: Christoph Lameter X-X-Sender: clameter@schroedinger.engr.sgi.com To: Matt Mackall cc: Peter Zijlstra , linux-kernel@vger.kernel.org, linux-mm@kvack.org, Thomas Graf , David Miller , Andrew Morton , Daniel Phillips , Pekka Enberg Subject: Re: [PATCH 0/5] make slab gfp fair In-Reply-To: <20070517175327.GX11115@waste.org> Message-ID: References: <20070514131904.440041502@chello.nl> <1179385718.27354.17.camel@twins> <20070517175327.GX11115@waste.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 17 May 2007, Matt Mackall wrote: > Simply stated, the problem is sometimes it's impossible to free memory > without allocating more memory. Thus we must keep enough protected > reserve that we can guarantee progress. This is what mempools are for > in the regular I/O stack. Unfortunately, mempools are a bad match for > network I/O. > > It's absolutely correct that performance doesn't matter in the case > this patch is addressing. All that matters is digging ourselves out of > OOM. The box either survives the crisis or it doesn't. Well we fail allocations in order to do so and these allocations may be even nonatomic allocs. Pretty dangerous approach. > It's also correct that we should hardly ever get into a situation > where we trigger this problem. But such cases are still fairly easy to > trigger in some workloads. Swap over network is an excellent example, > because we typically don't start swapping heavily until we're quite > low on freeable memory. Is it not possible to avoid failing allocs? Instead put processes to sleep? Run synchrononous reclaim?