Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756899Ab3FGS0M (ORCPT ); Fri, 7 Jun 2013 14:26:12 -0400 Received: from hrndva-omtalb.mail.rr.com ([71.74.56.122]:12872 "EHLO hrndva-omtalb.mail.rr.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756570Ab3FGS0J (ORCPT ); Fri, 7 Jun 2013 14:26:09 -0400 X-Authority-Analysis: v=2.0 cv=BcJaI8R2 c=1 sm=0 a=rXTBtCOcEpjy1lPqhTCpEQ==:17 a=mNMOxpOpBa8A:10 a=V63olZALi9sA:10 a=5SG0PmZfjMsA:10 a=IkcTkHD0fZMA:10 a=meVymXHHAAAA:8 a=iFRSGadmnM0A:10 a=XZ4Dvq9fYrp_bfUSiIMA:9 a=QEXdDO2ut3YA:10 a=rXTBtCOcEpjy1lPqhTCpEQ==:117 X-Cloudmark-Score: 0 X-Authenticated-User: X-Originating-IP: 74.67.115.198 Message-ID: <1370629568.9844.87.camel@gandalf.local.home> Subject: Re: NULL pointer dereference when loading the gre module (3.10.0-rc4) From: Steven Rostedt To: "Steinar H. Gunderson" Cc: Eric Dumazet , linux-kernel@vger.kernel.org, davem@davemloft.net, netdev@vger.kernel.org, Rusty Russell , Pravin B Shelar Date: Fri, 07 Jun 2013 14:26:08 -0400 In-Reply-To: <20130607175233.GA20230@uio.no> References: <20130606221656.GA11475@uio.no> <20130607030648.GA28618@home.goodmis.org> <20130607085421.GF15083@uio.no> <1370612441.24311.411.camel@edumazet-glaptop> <1370618100.9844.73.camel@gandalf.local.home> <20130607154634.GA7529@uio.no> <1370621543.9844.78.camel@gandalf.local.home> <20130607175233.GA20230@uio.no> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.4.4-3 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1750 Lines: 42 On Fri, 2013-06-07 at 19:52 +0200, Steinar H. Gunderson wrote: > On Fri, Jun 07, 2013 at 12:12:23PM -0400, Steven Rostedt wrote: > >> Ffffffffa0e76000 u ip_tunnel_init_net [ip_gre] > > What do you get if you do an objdump -Dr ip_gre.ko > > > > And then look for ipgre_init, and then subtract 0xb053 (45139) from its > > address. As that is: ffffffffa0e81055 - ffffffffa0e76002, then see if > > that object file has anything in that location. > > pannekake:~> objdump -Dr /lib/modules/3.10.0-rc4/kernel/net/ipv4/ip_gre.ko | grep ipgre_init > 0000000000000000 : > 0: 8b 35 00 00 00 00 mov 0x0(%rip),%esi # 6 > 13: e8 00 00 00 00 callq 18 > > Ie., the symbol doesn't show up in the disassembly (for whatever reason). Ah, that's because of this: module_init(ipgre_init); Where it makes it into: 00000000 : 0: 55 push %ebp 1: 89 e5 mov %esp,%ebp 3: 53 push %ebx 4: 83 ec 08 sub $0x8,%esp 7: c7 04 24 00 00 00 00 movl $0x0,(%esp) a: R_386_32 .rodata.str1.4 We can use ipgre_tap_init_net, and the offset of 0xb032 (45106) as that was 0xffffffffa0e5d034 - 0xffffffffa0e52002. Do you have CONFIG_NET_NS set? You can also cat /proc/modules. It gives you where the modules are located. -- Steve -- 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/