Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758067Ab1EXBe0 (ORCPT ); Mon, 23 May 2011 21:34:26 -0400 Received: from mail-qw0-f46.google.com ([209.85.216.46]:64721 "EHLO mail-qw0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752568Ab1EXBeW convert rfc822-to-8bit (ORCPT ); Mon, 23 May 2011 21:34:22 -0400 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=u7fyMwmZRrEVc3ltbhl2XG2kbDvcGgHJA6YPA4GRvngKDvRbPHB7XTshlxTxxvD/ns lr5RMB8GkYxUb0UGSY/0hxtIC7gADvsp42yYjOvMrti6HM51bTnhw3W8naANpYs1Qzj+ 2b4gwgeaG1dkZMcNryVUPyCWeSVmn9YpvXCU0= MIME-Version: 1.0 In-Reply-To: References: <4DD5DC06.6010204@jp.fujitsu.com> <20110520140856.fdf4d1c8.kamezawa.hiroyu@jp.fujitsu.com> <20110520101120.GC11729@random.random> <20110520153346.GA1843@barrios-desktop> <20110520161934.GA2386@barrios-desktop> Date: Tue, 24 May 2011 10:34:21 +0900 Message-ID: Subject: Re: Kernel falls apart under light memory pressure (i.e. linking vmlinux) From: Minchan Kim To: Andrew Lutomirski Cc: KOSAKI Motohiro , Andrea Arcangeli , KAMEZAWA Hiroyuki , fengguang.wu@intel.com, andi@firstfloor.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, mgorman@suse.de, hannes@cmpxchg.org, riel@redhat.com Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2602 Lines: 70 On Tue, May 24, 2011 at 10:19 AM, Andrew Lutomirski wrote: > On Sun, May 22, 2011 at 7:12 PM, Minchan Kim wrote: >> Could you test below patch based on vanilla 2.6.38.6? >> The expect result is that system hang never should happen. >> I hope this is last test about hang. >> >> Thanks. >> >> diff --git a/mm/vmscan.c b/mm/vmscan.c >> index 292582c..1663d24 100644 >> --- a/mm/vmscan.c >> +++ b/mm/vmscan.c >> @@ -231,8 +231,11 @@ unsigned long shrink_slab(struct shrink_control *shrink, >>       if (scanned == 0) >>               scanned = SWAP_CLUSTER_MAX; >> >> -       if (!down_read_trylock(&shrinker_rwsem)) >> -               return 1;       /* Assume we'll be able to shrink next time */ >> +       if (!down_read_trylock(&shrinker_rwsem)) { >> +               /* Assume we'll be able to shrink next time */ >> +               ret = 1; >> +               goto out; >> +       } >> >>       list_for_each_entry(shrinker, &shrinker_list, list) { >>               unsigned long long delta; >> @@ -286,6 +289,8 @@ unsigned long shrink_slab(struct shrink_control *shrink, >>               shrinker->nr += total_scan; >>       } >>       up_read(&shrinker_rwsem); >> +out: >> +       cond_resched(); >>       return ret; >>  } >> >> @@ -2331,7 +2336,7 @@ static bool sleeping_prematurely(pg_data_t >> *pgdat, int order, long remaining, >>        * must be balanced >>        */ >>       if (order) >> -               return pgdat_balanced(pgdat, balanced, classzone_idx); >> +               return !pgdat_balanced(pgdat, balanced, classzone_idx); >>       else >>               return !all_zones_ok; >>  } > > So far with this patch I can't reproduce the hang or the bogus OOM. > > To be completely clear, I have COMPACTION, MIGRATION, and THP off, I'm > running 2.6.38.6, and I have exactly two patches applied.  One is the > attached patch and the other is a the fpu.ko/aesni_intel.ko merger > which I need to get dracut to boot my box. > > For fun, I also upgraded to 8GB of RAM and it still works. > Hmm. Could you test it with enable thp and 2G RAM? Isn't it a original test environment? Please don't change test environment. :) Thanks for your effort, Andrew. -- Kind regards, Minchan Kim -- 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/