From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752894AbbCaH1o (ORCPT ); Tue, 31 Mar 2015 03:27:44 -0400 Received: from LGEMRELSE6Q.lge.com ([156.147.1.121]:36307 "EHLO lgemrelse6q.lge.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750909AbbCaH1n (ORCPT ); Tue, 31 Mar 2015 03:27:43 -0400 X-Original-SENDERIP: 10.177.220.203 X-Original-MAILFROM: namhyung@kernel.org Date: Tue, 31 Mar 2015 16:21:02 +0900 From: Namhyung Kim To: Arnaldo Carvalho de Melo Cc: Jiri Olsa , David Ahern , Jiri Olsa , Stephane Eranian , LKML Subject: Re: [BUG] segfault in perf-top -- thread refcnt Message-ID: <20150331072102.GA20651@sejong> References: <5515B9E6.5020007@gmail.com> <20150330080737.GD1413@krava> <20150330102220.GE1413@krava> <20150330112108.GG1413@krava> <20150330114907.GH1413@krava> <20150330124852.GA4507@danjae.kornet> <20150330145805.GC32560@kernel.org> <20150330151303.GD32560@kernel.org> <20150331002730.GE32033@sejong> <20150331004635.GB9438@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20150331004635.GB9438@kernel.org> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Mar 30, 2015 at 09:46:35PM -0300, Arnaldo Carvalho de Melo wrote: > Em Tue, Mar 31, 2015 at 09:27:30AM +0900, Namhyung Kim escreveu: > > On Mon, Mar 30, 2015 at 12:13:03PM -0300, Arnaldo Carvalho de Melo wrote: > > > Em Mon, Mar 30, 2015 at 11:58:05AM -0300, Arnaldo Carvalho de Melo escreveu: > > > > Em Mon, Mar 30, 2015 at 09:48:52PM +0900, Namhyung Kim escreveu: > > > > > But this makes every sample processing grabs and releases the lock so > > > > > might cause high overhead. It can be a problem if such processing is > > > > > done parallelly like my multi-thread work. :-/ > > > > > > > > Still untested, using rw lock, next step is auditing the > > > > machine__findnew_thread users that really should be using > > > > machine__find_thread, i.e. grabbing just the reader lock, and measuring > > > > the overhead of using a pthread rw lock instead of pthread_mutex_t as > > > > Jiri is doing. > > > > > > Don't bother trying it, doesn't even compile ;-\ > > > > OK. :) > > > > But I think rw lock still has not-so-low overhead as it involves > > atomic operations and cache misses. > > But we will have to serialize access to the data structure at some > point... Yes, as long as we keep ref-counting. I'm guessing if we only focus on the perf top case, there might be a way to cleanup dead threads without ref-counting (i.e. w/o affecting fastpath on the perf report). Thanks, Namhyung