From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 38189 invoked by alias); 6 Jan 2016 17:12:57 -0000 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 Received: (qmail 38142 invoked by uid 48); 6 Jan 2016 17:12:52 -0000 From: "dsmith at redhat dot com" To: systemtap@sourceware.org Subject: [Bug translator/19396] systemtap can't find certain kernel tracepoints Date: Wed, 06 Jan 2016 17:12:00 -0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: systemtap X-Bugzilla-Component: translator X-Bugzilla-Version: unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: dsmith at redhat dot com X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: systemtap at sourceware dot org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2016-q1/txt/msg00004.txt.bz2 https://sourceware.org/bugzilla/show_bug.cgi?id=3D19396 --- Comment #1 from David Smith --- I'm seeing something wacky here. This is on 2.6.32-573.el6.ppc64: =3D=3D=3D=3D # stap --poison-cache -L 'kernel.trace("*module*")' kernel.trace("jbd:module_free") $mod:struct module* kernel.trace("jbd:module_get") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("jbd:module_load") $mod:struct module* kernel.trace("jbd:module_put") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("jbd:module_request") $name:char* $wait:bool $ip:long unsigned= int =3D=3D=3D=3D So, when '--poison-cache' is used, for some reason stap thinks the module_* tracepoints are in the "jbd" subsystem instead of in the "module" subsystem. But, you can list them as being in the "module" subsystem: =3D=3D=3D=3D # stap -L 'kernel.trace("*module*")' kernel.trace("module:module_free") $mod:struct module* kernel.trace("module:module_get") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("module:module_load") $mod:struct module* kernel.trace("module:module_put") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("module:module_request") $name:char* $wait:bool $ip:long unsig= ned int =3D=3D=3D=3D You can actually see them in either subsystem: =3D=3D=3D=3D # stap -L 'kernel.trace("jbd:module*")' kernel.trace("jbd:module_free") $mod:struct module* kernel.trace("jbd:module_get") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("jbd:module_load") $mod:struct module* kernel.trace("jbd:module_put") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("jbd:module_request") $name:char* $wait:bool $ip:long unsigned= int # stap -L 'kernel.trace("module:module*")' kernel.trace("module:module_free") $mod:struct module* kernel.trace("module:module_get") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("module:module_load") $mod:struct module* kernel.trace("module:module_put") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("module:module_request") $name:char* $wait:bool $ip:long unsig= ned int =3D=3D=3D=3D Note that if you try this with a completely non-existing subsystem, you do = get the correct result (of nothing): =3D=3D=3D=3D # stap -L 'kernel.trace("foo:module*")' # =3D=3D=3D=3D It looks like you can look up the module tracepoints in about any (existing) subsystem: =3D=3D=3D=3D # stap -L 'kernel.trace("ext4:module*")' kernel.trace("ext4:module_free") $mod:struct module* kernel.trace("ext4:module_get") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("ext4:module_load") $mod:struct module* kernel.trace("ext4:module_put") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("ext4:module_request") $name:char* $wait:bool $ip:long unsigned int # stap -L 'kernel.trace("skb:module*")' kernel.trace("skb:module_free") $mod:struct module* kernel.trace("skb:module_get") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("skb:module_load") $mod:struct module* kernel.trace("skb:module_put") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("skb:module_request") $name:char* $wait:bool $ip:long unsigned= int # stap -L 'kernel.trace("net:module*")' kernel.trace("net:module_free") $mod:struct module* kernel.trace("net:module_get") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("net:module_load") $mod:struct module* kernel.trace("net:module_put") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("net:module_request") $name:char* $wait:bool $ip:long unsigned= int # stap -L 'kernel.trace("block:module*")'=20 kernel.trace("block:module_free") $mod:struct module* kernel.trace("block:module_get") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("block:module_load") $mod:struct module* kernel.trace("block:module_put") $mod:struct module* $ip:long unsigned int $refcnt:int kernel.trace("block:module_request") $name:char* $wait:bool $ip:long unsign= ed int =3D=3D=3D=3D Also note this isn't just because I used a wildcard, since the following wo= rks: =3D=3D=3D=3D # stap -L 'kernel.trace("block:module_free")' kernel.trace("block:module_free") $mod:struct module* =3D=3D=3D=3D --=20 You are receiving this mail because: You are the assignee for the bug.