From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4934 invoked by alias); 18 Oct 2006 01:06:33 -0000 Received: (qmail 4925 invoked by uid 22791); 18 Oct 2006 01:06:30 -0000 X-Spam-Status: No, hits=-1.4 required=5.0 tests=AWL,BAYES_20 X-Spam-Check-By: sourceware.org Received: from mga02.intel.com (HELO mga02.intel.com) (134.134.136.20) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 18 Oct 2006 01:06:28 +0000 Received: from orsmga001.jf.intel.com ([10.7.209.18]) by mga02.intel.com with ESMTP; 17 Oct 2006 18:06:27 -0700 Received: from scsmsx331.sc.intel.com (HELO scsmsx331.amr.corp.intel.com) ([10.3.90.4]) by orsmga001.jf.intel.com with ESMTP; 17 Oct 2006 18:06:26 -0700 X-ExtLoop1: 1 X-IronPort-AV: i="4.09,322,1157353200"; d="scan'208"; a="146628721:sNHT79852752" Received: from scsmsx413.amr.corp.intel.com ([10.3.90.32]) by scsmsx331.amr.corp.intel.com with Microsoft SMTPSVC(6.0.3790.211); Tue, 17 Oct 2006 18:06:24 -0700 X-MimeOLE: Produced By Microsoft Exchange V6.5 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Subject: RE: Stap is translating to functions in __exit sections...and later module load fails Date: Wed, 18 Oct 2006 01:06:00 -0000 Message-ID: X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Stap is translating to functions in __exit sections...and later module load fails Thread-Index: AcbxFgPEHRciOCu/Qkad9e4NdrDyCgBONqdQAABGDkA= From: "Stone, Joshua I" To: "Keshavamurthy, Anil S" , "Mao, Bibo" , "Eugeniy Meshcheryakov" Cc: "Systemtap" X-OriginalArrivalTime: 18 Oct 2006 01:06:24.0615 (UTC) FILETIME=[A1B8BF70:01C6F251] X-IsSubscribed: yes Mailing-List: contact systemtap-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Post: List-Help: , Sender: systemtap-owner@sourceware.org X-SW-Source: 2006-q4/txt/msg00151.txt.bz2 On Tuesday, October 17, 2006 5:52 PM, Keshavamurthy, Anil S wrote: > After commenting (i.e not discarding) *(.exit.text) from > arch/ia64/kernel/vmlinux.lds.S file and booting with this new > kernel, stap ignores functions in __exit sections and elaborates > and translates functions properly. The issue in stap/elfutils when __exit is discarded is that it can't locate the function properly. It knows there's a function called 'exit_pfm_fs', but since it can't figure the probe address for the function (since it was discarded), stap gets an address of 0x0. Then blacklist_p tries to figure out what section that's in, and if that section is .exit.*, the function is rejected. (Rejection in the case of function("*") just means it is skipped, not an error.) In this case the section is not .exit.* -- or rather, we don't know what section it's in -- so the probe is added to the list. Perhaps the simple solution would be to treat a probe address with an *unknown* section as blacklisted as well. If we don't know what it is, it probably isn't safe, right? > Can someone tell me why this section is not discarded on Ia32? Not me. But what is the point of __exit functions if they are always discarded? Wouldn't you think that __exit should be kept around for when the kernel exits? Josh