From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753333AbXCaTkz (ORCPT ); Sat, 31 Mar 2007 15:40:55 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753335AbXCaTkz (ORCPT ); Sat, 31 Mar 2007 15:40:55 -0400 Received: from smtp.osdl.org ([65.172.181.24]:34023 "EHLO smtp.osdl.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753333AbXCaTky (ORCPT ); Sat, 31 Mar 2007 15:40:54 -0400 Date: Sat, 31 Mar 2007 12:40:49 -0700 From: Andrew Morton To: Bernhard Rosenkraenzer Cc: linux-kernel@vger.kernel.org, Dan Williams , Neil Brown Subject: Re: 2.6.21-rc5-mm[12]: Oops on bootup in xor_see_2 Message-Id: <20070331124049.ec87cb3a.akpm@linux-foundation.org> In-Reply-To: <200703311736.47751.bero@arklinux.org> References: <200703311736.47751.bero@arklinux.org> X-Mailer: Sylpheed version 2.2.7 (GTK+ 2.8.17; x86_64-unknown-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org On Sat, 31 Mar 2007 17:36:47 +0000 Bernhard Rosenkraenzer wrote: > I'm getting this Oops when booting an 2.6.21-rc5-mm1 or 2.6.21-rc5-mm2 on an > Acer Aspire 1501 LMi in 32 bit mode (2.6.21-rc4-mm1 + hotfixes works > perfectly): > > xor: automatically using best checksumming function: pIII_sse > > BUG: unable to handle kernel NULL pointer dereference at virtual address > 00000010 > printing eip: > c02cb724 > *pde=00000000 > Oops: 0002 [#1] > last sysfs file: > Modules linked in: > CPU: 0 > EIP: 0060:[] Not tainted VLI > EFLAGS: 00010212 (2.6.12-rc5-mm2) > EIP is at xor_sse_2+0x34/0x200 > eax: 00000010 ebx: fffea4df ecx: df8c3000 edx: df8c0000 > esi: 8005003b edi: c03ebce0 ebp: df8c3000 esp: dfd01ef8 > ds: 007b es: 007b fs: 00d8 gs: 0000 ss: 0068 > Process swapper (pid: 1, ti=dfd000000 task=c146aa10 task:ti=dfd00000 > Stack: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 > 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 > c13f1800 fffea4df 00000000 c02caa83 c03ebce0 df8c0000 00000000 c011bd7b > Call Trace: > [] do_xor_speed+0x53/0xf0 > [] printk+0x1b/0x20 > [] calibrate_xor_block+0x2e/0x1b0 > [] kernel_init+0x92/0x1c0 > [] ret_from_fork+0x6/0x1c > [] kernel_init+0x0/0x1c0 > [] kernel_init+0x0/0x1c0 > [] kernel_thread_helper+0x7/0x10 > ======================= > Code: 44 89 74 24 48 0f 20 c6 0f 06 0f 11 04 24 0f 11 4c 24 10 0f 11 54 24 20 > 0f > 11 5c 24 30 0f 18 82 00 01 00 00 0f 18 82 20 01 00 00 <00> 00 00 00 00 > 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > - Dan, I'm assuming your changes in there are the cause of this. AFAICT all you're doing is moving code around, so it's a bit odd. Bernhard, the config would be useful please. Neil, is calibrate_xor_block() being rational? b1 = (void *) __get_free_pages(GFP_KERNEL, 2); ... b2 = b1 + 2*PAGE_SIZE + BENCH_SIZE; Is it correct to add BENCH_SIZE to b2 here?