From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29925 invoked by alias); 18 Aug 2006 18:38:38 -0000 Received: (qmail 29916 invoked by uid 22791); 18 Aug 2006 18:38:37 -0000 X-Spam-Check-By: sourceware.org Received: from e5.ny.us.ibm.com (HELO e5.ny.us.ibm.com) (32.97.182.145) by sourceware.org (qpsmtpd/0.31) with ESMTP; Fri, 18 Aug 2006 18:38:34 +0000 Received: from d01relay04.pok.ibm.com (d01relay04.pok.ibm.com [9.56.227.236]) by e5.ny.us.ibm.com (8.12.11.20060308/8.12.11) with ESMTP id k7IIcW3X029965 for ; Fri, 18 Aug 2006 14:38:32 -0400 Received: from d01av03.pok.ibm.com (d01av03.pok.ibm.com [9.56.224.217]) by d01relay04.pok.ibm.com (8.13.6/8.13.6/NCO v8.1.1) with ESMTP id k7IIcWXo288416 for ; Fri, 18 Aug 2006 14:38:32 -0400 Received: from d01av03.pok.ibm.com (loopback [127.0.0.1]) by d01av03.pok.ibm.com (8.12.11.20060308/8.13.3) with ESMTP id k7IIcWOY013482 for ; Fri, 18 Aug 2006 14:38:32 -0400 Received: from vivek.in.ibm.com ([9.124.88.164]) by d01av03.pok.ibm.com (8.12.11.20060308/8.12.11) with ESMTP id k7IIcUdH013361; Fri, 18 Aug 2006 14:38:31 -0400 Received: by vivek.in.ibm.com (Postfix, from userid 500) id 5E9BC124931; Fri, 18 Aug 2006 14:38:07 -0400 (EDT) Date: Fri, 18 Aug 2006 18:38:00 -0000 From: Vivek Goyal To: gdb@sourceware.org Cc: Dave Anderson Subject: "gdb vmlinux" gives wrong symbol addresses Message-ID: <20060818183807.GD12962@in.ibm.com> Reply-To: vgoyal@in.ibm.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.11 X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2006-08/txt/msg00137.txt.bz2 Hi, I am trying to run gdb with kernel vmlinux to find out symbol addresses. #> gdb vmlinux (gdb) p &linux_banner If I link my vmlinux with linker option --emit-relocs then gdb seems to be giving wrong values for the symbols. Following are two outputs. vmlinux linked without option --emit-relocs (gdb) p &linux_banner $1 = (char (*)[162]) 0xc0344000 vmlinux linked with option --emit-relocs (gdb) p &linux_banner $1 = (char (*)[162]) 0x8068a000 Above address is not a kernel address at all. I have compiled my kernel with -g for i386 machine. I am using gdb version 6.3 Any suggestions regarding where the anomaly is will help. Thanks Vivek