From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24919 invoked by alias); 28 Jul 2011 12:09:22 -0000 Received: (qmail 24902 invoked by uid 22791); 28 Jul 2011 12:09:20 -0000 X-SWARE-Spam-Status: No, hits=-2.8 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00,TW_MJ X-Spam-Check-By: sourceware.org Received: from localhost (HELO sourceware.org) (127.0.0.1) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 28 Jul 2011 12:09:06 +0000 From: "mjw at redhat dot com" To: systemtap@sourceware.org Subject: [Bug translator/13037] blacklist false positives X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: systemtap X-Bugzilla-Component: translator X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: mjw at redhat dot com X-Bugzilla-Status: NEW X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: systemtap at sourceware dot org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Date: Thu, 28 Jul 2011 12:09:00 -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 X-SW-Source: 2011-q3/txt/msg00116.txt.bz2 http://sourceware.org/bugzilla/show_bug.cgi?id=13037 --- Comment #2 from Mark Wielaard 2011-07-28 12:08:46 UTC --- This is what I ended up with. Tested against 2.6.35.13-92.fc14.x86_64, 2.6.18-274.el5 and 2.6.32-131.6.1.el6.x86_64. commit 65d791538e9c4c52f6fe121f740d8b1e01d27033 Author: Mark Wielaard Date: Thu Jul 28 14:02:09 2011 +0200 PR13037 Make lock blacklist more specific. The dwflpp::build_blacklist() would also match things like _nolock, block or clock. Be more specific that we want to only match things like _lock, _unlock, _trylock or seq[un]lock. diff --git a/dwflpp.cxx b/dwflpp.cxx index fda6afd..1a904f1 100644 --- a/dwflpp.cxx +++ b/dwflpp.cxx @@ -2985,15 +2985,24 @@ dwflpp::build_blacklist() blfn += "|unknown_nmi_error"; // Lots of locks - blfn += "|.*raw_.*lock.*"; - blfn += "|.*read_.*lock.*"; - blfn += "|.*write_.*lock.*"; - blfn += "|.*spin_.*lock.*"; - blfn += "|.*rwlock_.*lock.*"; - blfn += "|.*rwsem_.*lock.*"; + blfn += "|.*raw_.*_lock.*"; + blfn += "|.*raw_.*_unlock.*"; + blfn += "|.*raw_.*_trylock.*"; + blfn += "|.*read_lock.*"; + blfn += "|.*read_unlock.*"; + blfn += "|.*read_trylock.*"; + blfn += "|.*write_lock.*"; + blfn += "|.*write_unlock.*"; + blfn += "|.*write_trylock.*"; + blfn += "|.*write_seqlock.*"; + blfn += "|.*write_sequnlock.*"; + blfn += "|.*spin_lock.*"; + blfn += "|.*spin_unlock.*"; + blfn += "|.*spin_trylock.*"; + blfn += "|.*spin_is_locked.*"; + blfn += "|rwsem_.*lock.*"; blfn += "|.*mutex_.*lock.*"; blfn += "|raw_.*"; - blfn += "|.*seq_.*lock.*"; // atomic functions blfn += "|atomic_.*"; All functions now not blacklisted end in _nolock, contain block or clock. To get a list of blacklisted functions against a particular kernel run: stap -vvv -l 'kernel.function("*")' 'module.function("*)' 2>&1 | grep ^probe | grep blacklisted$ | cut -f2 -d\ | cut -f1 -d\@ | sort -u -- Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug.