From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753381AbbJZJIj (ORCPT ); Mon, 26 Oct 2015 05:08:39 -0400 Received: from szxga02-in.huawei.com ([119.145.14.65]:52361 "EHLO szxga02-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750971AbbJZJIg (ORCPT ); Mon, 26 Oct 2015 05:08:36 -0400 Message-ID: <562DED7D.2080306@huawei.com> Date: Mon, 26 Oct 2015 17:08:13 +0800 From: "Wangnan (F)" User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 MIME-Version: 1.0 To: Arnaldo Carvalho de Melo , pi3orama , Adrian Hunter CC: , Alexei Starovoitov , Peter Zijlstra , Li Zefan Subject: Re: [RFC PATCH] perf tools: Don't set inherit bit for system wide evsel References: <1445597029-133332-1-git-send-email-wangnan0@huawei.com> <20151023135141.GD27006@kernel.org> <3E5B2C7C-BD19-4B61-AEDC-D1E2CFE0D7D2@163.com> <20151023161749.GF27006@kernel.org> In-Reply-To: <20151023161749.GF27006@kernel.org> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [10.111.66.109] X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2015/10/24 0:17, Arnaldo Carvalho de Melo wrote: > Em Fri, Oct 23, 2015 at 09:58:20PM +0800, pi3orama escreveu: >> >> 发自我的 iPhone >> >>> 在 2015年10月23日,下午9:51,Arnaldo Carvalho de Melo 写道: >>> >>> Em Fri, Oct 23, 2015 at 10:43:49AM +0000, Wang Nan escreveu: >>>> Inherit bit is useless for a system wide evsel [1]. Further kernel >>>> improvements are giving more constrain [2] on inherit events. This >>>> patch set inherit bit to 0 to avoid potential constrains. >>>> >>>> [1] http://lkml.kernel.org/r/20151022124142.GQ17308@twins.programming.kicks-ass.net >>>> [2] http://lkml.kernel.org/r/1445559014-4667-1-git-send-email-ast@kernel.org >>>> >>>> Signed-off-by: Wang Nan >>>> Cc: Arnaldo Carvalho de Melo >>>> Cc: Alexei Starovoitov >>>> Cc: Peter Zijlstra >>>> Cc: Li Zefan >>>> Cc: pi3orama@163.com >>>> Link: http://lkml.kernel.org/n/ebpf-0tgilipxoo6fiebcxu3ft866@git.kernel.org >>>> --- >>>> >>>> evsel->system_wide doesn't correct reflect whether this evsel is system >>>> wide or not, so checks pid when invoking perf_event_open, and it is >>>> always correct. >>> Can't we do this at perf_evlist__config() or perf_evsel__config() time? >> perf_evlist_config() is excluded because perf record doesn't use it. > Yeah, we need to make it use it :-\ Its my fault that perf record *does* use perf_evlist__config(), but 'perf stat' doesn't. > >>> We have record_opts at perf_evsel__config() time and I think we should >>> leave changing the attr at perf_evsel__open() time for feature >>> fallbacks, i.e. something we will only know when trying to use, which is >>> different from this inherit-on-syswide case, that we know far in advance >>> we will not need. >> I tried to set this bit based on evsel->system_wide but it seems not reliable >> as it should be, so I was wondering whether it is designed for other use. I will look >> into this next week. evsel->system_wide is introduced by commit bf8e8f4b832972c76d64ab2e2837a48397144887 (perf evlist: Add 'system_wide' option), but Adrian only introduced a new field into perf, doesn't really make it active. Until now the only user of it is arch/x86/util/intel-pt.c, but I'm not very sure the reason for IPT to use that field. If I understand correctly, it should be okay for a normal system wide evsel to have this var set. I'll try another RFC for it. Thank you. > Ok, thanks in advance, lemme go back looking at eBPF :-) > > - Arnaldo