From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754547AbZEDTHV (ORCPT ); Mon, 4 May 2009 15:07:21 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753555AbZEDTHH (ORCPT ); Mon, 4 May 2009 15:07:07 -0400 Received: from smtp1.linux-foundation.org ([140.211.169.13]:41314 "EHLO smtp1.linux-foundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751551AbZEDTHF (ORCPT ); Mon, 4 May 2009 15:07:05 -0400 Date: Mon, 4 May 2009 12:01:03 -0700 From: Andrew Morton To: "Rafael J. Wysocki" Cc: rientjes@google.com, fengguang.wu@intel.com, linux-pm@lists.linux-foundation.org, pavel@ucw.cz, torvalds@linux-foundation.org, jens.axboe@oracle.com, alan-jenkins@tuffmail.co.uk, linux-kernel@vger.kernel.org, kernel-testers@vger.kernel.org Subject: Re: [PATCH 1/5] mm: Add __GFP_NO_OOM_KILL flag Message-Id: <20090504120103.c516ad18.akpm@linux-foundation.org> In-Reply-To: <200905041702.23291.rjw@sisk.pl> References: <200905040210.10153.rjw@sisk.pl> <200905041702.23291.rjw@sisk.pl> X-Mailer: Sylpheed version 2.2.4 (GTK+ 2.8.20; i486-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 4 May 2009 17:02:22 +0200 "Rafael J. Wysocki" wrote: > On Monday 04 May 2009, David Rientjes wrote: > > On Mon, 4 May 2009, Rafael J. Wysocki wrote: > > > > > Index: linux-2.6/mm/page_alloc.c > > > =================================================================== > > > --- linux-2.6.orig/mm/page_alloc.c > > > +++ linux-2.6/mm/page_alloc.c > > > @@ -1620,7 +1620,8 @@ nofail_alloc: > > > } > > > > > > /* The OOM killer will not help higher order allocs so fail */ > > > - if (order > PAGE_ALLOC_COSTLY_ORDER) { > > > + if (order > PAGE_ALLOC_COSTLY_ORDER || > > > + (gfp_mask & __GFP_NO_OOM_KILL)) { > > > clear_zonelist_oom(zonelist, gfp_mask); > > > goto nopage; > > > } > > > > This is inconsistent because __GFP_NO_OOM_KILL now implies __GFP_NORETRY > > (the "goto nopage" above), but only for allocations with __GFP_FS set and > > __GFP_NORETRY clear. > > Well, what would you suggest? > Did you check whether the existing __GFP_NORETRY will work as-is for this requirement? From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Morton Subject: Re: [PATCH 1/5] mm: Add __GFP_NO_OOM_KILL flag Date: Mon, 4 May 2009 12:01:03 -0700 Message-ID: <20090504120103.c516ad18.akpm@linux-foundation.org> References: <200905040210.10153.rjw@sisk.pl> <200905041702.23291.rjw@sisk.pl> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <200905041702.23291.rjw-KKrjLPT3xs0@public.gmane.org> Sender: kernel-testers-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-ID: Content-Type: text/plain; charset="us-ascii" To: "Rafael J. Wysocki" Cc: rientjes-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org, fengguang.wu-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org, linux-pm-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org, pavel-+ZI9xUNit7I@public.gmane.org, torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org, jens.axboe-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org, alan-jenkins-cCz0Lq7MMjm9FHfhHBbuYA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, kernel-testers-u79uwXL29TY76Z2rM5mHXA@public.gmane.org On Mon, 4 May 2009 17:02:22 +0200 "Rafael J. Wysocki" wrote: > On Monday 04 May 2009, David Rientjes wrote: > > On Mon, 4 May 2009, Rafael J. Wysocki wrote: > > > > > Index: linux-2.6/mm/page_alloc.c > > > =================================================================== > > > --- linux-2.6.orig/mm/page_alloc.c > > > +++ linux-2.6/mm/page_alloc.c > > > @@ -1620,7 +1620,8 @@ nofail_alloc: > > > } > > > > > > /* The OOM killer will not help higher order allocs so fail */ > > > - if (order > PAGE_ALLOC_COSTLY_ORDER) { > > > + if (order > PAGE_ALLOC_COSTLY_ORDER || > > > + (gfp_mask & __GFP_NO_OOM_KILL)) { > > > clear_zonelist_oom(zonelist, gfp_mask); > > > goto nopage; > > > } > > > > This is inconsistent because __GFP_NO_OOM_KILL now implies __GFP_NORETRY > > (the "goto nopage" above), but only for allocations with __GFP_FS set and > > __GFP_NORETRY clear. > > Well, what would you suggest? > Did you check whether the existing __GFP_NORETRY will work as-is for this requirement?