From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1760019AbXEQDCt (ORCPT ); Wed, 16 May 2007 23:02:49 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1758590AbXEQDCl (ORCPT ); Wed, 16 May 2007 23:02:41 -0400 Received: from netops-testserver-3-out.sgi.com ([192.48.171.28]:42953 "EHLO relay.sgi.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1758502AbXEQDCl (ORCPT ); Wed, 16 May 2007 23:02:41 -0400 Date: Wed, 16 May 2007 20:02:37 -0700 (PDT) From: Christoph Lameter X-X-Sender: clameter@schroedinger.engr.sgi.com To: Peter Zijlstra cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, Thomas Graf , David Miller , Andrew Morton , Daniel Phillips , Pekka Enberg , Matt Mackall Subject: Re: [PATCH 0/5] make slab gfp fair In-Reply-To: <20070514131904.440041502@chello.nl> Message-ID: References: <20070514131904.440041502@chello.nl> 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 Mon, 14 May 2007, Peter Zijlstra wrote: > > In the interest of creating a reserve based allocator; we need to make the slab > allocator (*sigh*, all three) fair with respect to GFP flags. > > That is, we need to protect memory from being used by easier gfp flags than it > was allocated with. If our reserve is placed below GFP_ATOMIC, we do not want a > GFP_KERNEL allocation to walk away with it - a scenario that is perfectly > possible with the current allocators. And the solution is to fail the allocation of the process which tries to walk away with it. The failing allocation will lead to the killing of the process right? We already have an OOM killer which potentially kills random processes. We hate it. Could you please modify the patchset to *avoid* failure conditions. This patchset here only manages failure conditions. The system should not get into the failure conditions in the first place! For that purpose you may want to put processes to sleep etc. But in order to do so you need to figure out which processes you need to make progress.