Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Fri, 30 Nov 2001 13:48:13 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Fri, 30 Nov 2001 13:47:37 -0500 Received: from [195.63.194.11] ([195.63.194.11]:61958 "EHLO mail.stock-world.de") by vger.kernel.org with ESMTP id ; Fri, 30 Nov 2001 13:47:24 -0500 Message-ID: <3C07D1E3.15F77C98@evision-ventures.com> Date: Fri, 30 Nov 2001 19:37:23 +0100 From: Martin Dalecki Reply-To: dalecki@evision.ag X-Mailer: Mozilla 4.78 [en] (X11; U; Linux 2.4.7-10 i686) X-Accept-Language: en, de MIME-Version: 1.0 To: Davide Libenzi CC: Brian Gerst , Simon Turvey , lkml Subject: Re: Generating a function call trace In-Reply-To: Content-Type: text/plain; charset=iso-8859-2 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Davide Libenzi wrote: > > On Fri, 30 Nov 2001, Brian Gerst wrote: > > > Davide Libenzi wrote: > > > > > > On Fri, 30 Nov 2001, Simon Turvey wrote: > > > > > > > Is it possible to arbitrarily generate (in a module say) a function call > > > > trace? > > > > > > gcc has builtin macros to trace back or ( on x86 ) you can simply chain > > > through %esp/%ebp > > > > That only works if you compile with frame pointers, which the kernel > > turns off for performance reasons (due to register pressure on the x86). > > I thought it was a general question not a kernel code one. > Sure -fomit-frame-pointer is on inside the kernel. With the , well exception, of the scheduler, which does the task switching by overwriting his own return address on the stack by the address of the next jump point in a process, and needs the frame pointer therefore ;-). - 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/