From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3264 invoked by alias); 22 Jul 2009 10:02:17 -0000 Received: (qmail 2834 invoked by uid 22791); 22 Jul 2009 10:02:15 -0000 X-SWARE-Spam-Status: No, hits=-1.3 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_21,SPF_PASS X-Spam-Check-By: sourceware.org Received: from rv-out-0708.google.com (HELO rv-out-0708.google.com) (209.85.198.245) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 22 Jul 2009 10:02:06 +0000 Received: by rv-out-0708.google.com with SMTP id b17so20145rvf.48 for ; Wed, 22 Jul 2009 03:02:04 -0700 (PDT) Received: by 10.140.171.15 with SMTP id t15mr437703rve.134.1248256924694; Wed, 22 Jul 2009 03:02:04 -0700 (PDT) Received: from bibi.branda.to (61-30-10-70.static.tfn.net.tw [61.30.10.70]) by mx.google.com with ESMTPS id k2sm909118rvb.12.2009.07.22.03.02.02 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 22 Jul 2009 03:02:03 -0700 (PDT) Received: from bibi.branda.to (localhost [127.0.0.1]) by bibi.branda.to (8.14.3/8.14.3) with ESMTP id n6MA2Vco007005; Wed, 22 Jul 2009 18:02:36 +0800 (CST) (envelope-from thinker@localhost.my.domain) Received: (from thinker@localhost) by bibi.branda.to (8.14.3/8.14.3/Submit) id n6MA2LPb007002; Wed, 22 Jul 2009 18:02:21 +0800 (CST) (envelope-from thinker) From: Thinker Li MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <19046.58285.142467.788502@bibi.branda.to> Date: Wed, 22 Jul 2009 12:12:00 -0000 To: Daniel Jacobowitz Cc: Thinker Li , gdb-patches@sourceware.org Subject: Re: Get backtrace at PLT and stepi into PLT In-Reply-To: <20090721180907.GB11667@caradoc.them.org> References: <20090721180907.GB11667@caradoc.them.org> Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2009-07/txt/msg00535.txt.bz2 Daniel Jacobowitz writes: > On Tue, Jul 21, 2009 at 10:57:06AM +0800, Thinker Li wrote: > > You can not do backtrace when you stop at PLT with GDB. > > arm_stub_unwind_sniffer create a frame with NORMAL_FRAME type for > > PLT. But, when we do backtrace, get_prev_frame() will check if > > this frame inside_entry_func. Since we can not found any symbol for > > PLT, it:s func address is 0, and entry_point_address() is also 0 if > > symfile_objfile is NULL (no main symbol table). It makes problem on > > backtracing. > > Thanks, that's much clearer. That's where the bug is. An unknown > function address should not be inside_entry_func. Is it possible that entry point of an program is 0? Maybe, we should change interface of entry_point_address() to indicate an unknown address. Do you have any suggestion?