From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27177 invoked by alias); 16 Dec 2011 19:18:04 -0000 Received: (qmail 27152 invoked by uid 22791); 16 Dec 2011 19:18:03 -0000 X-SWARE-Spam-Status: No, hits=-5.2 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,SPF_HELO_PASS X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 16 Dec 2011 19:17:50 +0000 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id pBGJHlGR005341 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Fri, 16 Dec 2011 14:17:50 -0500 Received: from toonder.wildebeest.org (ovpn-116-18.ams2.redhat.com [10.36.116.18]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id pBGIcb7T008215 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 16 Dec 2011 13:38:38 -0500 Received: by toonder.wildebeest.org (Postfix, from userid 1000) id A885720C9A; Fri, 16 Dec 2011 19:38:36 +0100 (CET) Date: Fri, 16 Dec 2011 20:45:00 -0000 From: Mark Wielaard To: William Cohen Cc: systemtap@sourceware.org Subject: Re: Example looking at the periodic timers Message-ID: <20111216183836.GC2526@toonder.wildebeest.org> References: <4EE7CA4E.9080109@redhat.com> <1323861834.3567.27.camel@springer.wildebeest.org> <4EE8B822.5010202@redhat.com> <20111214181911.GA8166@toonder.wildebeest.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20111214181911.GA8166@toonder.wildebeest.org> User-Agent: Mutt/1.5.21 (2010-09-15) Mailing-List: contact systemtap-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: systemtap-owner@sourceware.org X-SW-Source: 2011-q4/txt/msg00380.txt.bz2 On Wed, Dec 14, 2011 at 07:19:12PM +0100, Mark Wielaard wrote: > On Wed, Dec 14, 2011 at 09:52:18AM -0500, William Cohen wrote: > > Which functions are you referring to? I think that the raw addresses in > > the output are might the timers related to the systemtap instrumentation > > module. > > Aha. You are right. > I even have a patch for modname() to get "unknown" module names. > I haven't checked it in because I found the preempt_disable() so > incredible ugly. We cannot use the module_mutex because we could > theoretically be probing some code that holds that mutex. What do > people think, is it useful enough to warrant the ugliness? Since nobody yelled and screamed about it being too ugly I cleaned it up and made sure it also works for symdata(). commit 17373b9e59df05fb8101ec173b580d593ba65d09 Author: Mark Wielaard Date: Fri Dec 16 16:59:00 2011 +0100 modname/symdata: Try harder to retrieve module name when requested. When the user really wants a kernel module name with an address and we are unable to map it to any existing one then fall back on using __module_text_address() with appropriate locking. Now the periodic.stp example will show who is really responsible for all these timers... us... #monitoring timer periods (press control-c for output) #type function period(us) count kernel 0xffffffffa109c780 [stap_6c9caccd440e93fb9f95605bb 999 4999 kernel 0xffffffffa109c780 [stap_6c9caccd440e93fb9f95605bb 1000 4996 kernel 0xffffffffa109c780 [stap_6c9caccd440e93fb9f95605bb 1001 4992 kernel 0xffffffffa109c780 [stap_6c9caccd440e93fb9f95605bb 1001 4992 work_q do_dbs_timer 9999 499 kernel 0xffffffffa109c330 [stap_6c9caccd440e93fb9f95605bb 10000 499 work_q do_dbs_timer 10000 499 work_q do_dbs_timer 10000 499 work_q do_dbs_timer 10000 499 kernel 0xffffffffa109c270 [stap_6c9caccd440e93fb9f95605bb 20003 249 kernel flush_unmaps_timeout+0x0/0x40 [kernel] 80573 61 kernel clocksource_watchdog+0x0/0x210 [kernel] 500001 9 work_q i915_gem_retire_work_handler 1001999 4 work_q sync_cmos_clock 999999 4 work_q vmstat_update 1000002 4 work_q vmstat_update 1000002 4 work_q vmstat_update 999999 4 work_q vmstat_update 999997 4 kernel intel_gpu_idle_timer+0x0/0x80 [i915] 601000 3 kernel br_hello_timer_expired+0x0/0x80 [bridge] 2000015 1 kernel iwl_bg_watchdog+0x0/0x110 [iwlagn] 2504008 1 kernel e1000_watchdog+0x0/0x20 [e1000e] 2000016 1 Cheers, Mark