From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S263851AbUEXDDh (ORCPT ); Sun, 23 May 2004 23:03:37 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S263860AbUEXDDh (ORCPT ); Sun, 23 May 2004 23:03:37 -0400 Received: from fed1rmmtao03.cox.net ([68.230.241.36]:44983 "EHLO fed1rmmtao03.cox.net") by vger.kernel.org with ESMTP id S263851AbUEXDDe (ORCPT ); Sun, 23 May 2004 23:03:34 -0400 Message-ID: <40B16736.6090303@easyco.com> Date: Sun, 23 May 2004 20:08:38 -0700 From: Doug Dumitru User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7b) Gecko/20040316 X-Accept-Language: en-us, en MIME-Version: 1.0 To: linux-kernel@vger.kernel.org Subject: Re: Hard Hang with __alloc_pages: 0-order allocation failed (gfp=0x20/1) - Not out of memory Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org I pulled some more information (if I did it correctly) from the first stack dump from the first __alloc_pages error log. ksymoops 2.4.4 on i686 2.4.25. Options used -V (default) -k ksyms.5 (specified) -l /proc/modules (default) -o /lib/modules/2.4.26/ (specified) -m /boot/System.map-2.4.26 (specified) Warning (expand_objects): object /lib/modules/2.4.26/kernel/drivers/md/lvm-mod.o for module lvm-mod has changed since load Warning (expand_objects): object /lib/modules/2.4.26/kernel/drivers/md/md.o for module md has changed since load cc68bad8 c0135289 00000000 011410ac 00000001 0000000c c03689dc 0000 cbccb780 cbccb780 c02d23ba c7c5b838 Call Trace: [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] Warning (Oops_read): Code line not seen, dumping what data is available Trace; c0135289 <__alloc_pages+2d9/2f0> Trace; c01352b0 <__get_free_pages+10/20> Trace; c0132214 Trace; c02d23ba Trace; c01327f1 Trace; c029923f Trace; c01f0d3c Trace; c01f0c52 Trace; c0121786 Trace; c01219d9 Trace; c01f05ec Trace; c010a4de Trace; c010a6f4 Trace; c0133ce6 Trace; c0134152 Trace; c01341fc Trace; c0134271 Trace; c0134dff Trace; c0135169 <__alloc_pages+1b9/2f0> Trace; c01352b0 <__get_free_pages+10/20> Trace; c014c203 <__pollwait+33/90> Trace; c02b765e Trace; c029634f Trace; c014c467 Trace; c014c8e9 Trace; c010a72d Trace; c0108b63 If I am reading this correctly, the system was ... in an interrupt processing some TCP select(...) stuff asking for a page doing a zone rebalance trying to shrink cache and interrupted again by the ethernet driver which wanted to allocate an skb which wanted a page Thus __alloc_pages appears to be called recursively, with the 2nd call during a rebalance in the first one and both calls non-interuptable (on interrupts). Is this allowable? -------------------------------------------------------------------- Doug Dumitru 800-470-2756 (610-237-2000) EasyCo LLC doug@easyco.com http://easyco.com --------------------------------------------------------------------