From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755765AbbJVFaf (ORCPT ); Thu, 22 Oct 2015 01:30:35 -0400 Received: from szxga02-in.huawei.com ([119.145.14.65]:7333 "EHLO szxga02-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751043AbbJVFae (ORCPT ); Thu, 22 Oct 2015 01:30:34 -0400 Message-ID: <5628745A.4080204@huawei.com> Date: Thu, 22 Oct 2015 13:30:02 +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: Alexei Starovoitov , "David S. Miller" CC: Ingo Molnar , Peter Zijlstra , He Kuang , Kaixu Xia , "Daniel Borkmann" , , Subject: Re: [PATCH v2 net-next] bpf: fix bpf_perf_event_read() helper References: <1445468283-4592-1-git-send-email-ast@kernel.org> <56286ACD.3060604@huawei.com> <56286D5C.2060009@plumgrid.com> In-Reply-To: <56286D5C.2060009@plumgrid.com> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit 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/22 13:00, Alexei Starovoitov wrote: > On 10/21/15 9:49 PM, Wangnan (F) wrote: >> After applying this patch I'm unable to use perf passing perf_event >> again like this: > > please do not top post and trim your replies. > >> # perf record -a -e evt=cycles -e >> ./test_config_map.c/maps.pmu_map.event=evt/ --exclude-perf ls >> >> With -v it output: >> >> ... >> adding perf_bpf_probe:func_write >> adding perf_bpf_probe:func_write to 0x367d6a0 >> add bpf event perf_bpf_probe:func_write_return and attach bpf program 6 >> adding perf_bpf_probe:func_write_return >> adding perf_bpf_probe:func_write_return to 0x3a7fc40 >> mmap size 528384B >> ERROR: failed to insert value to pmu_map[0] >> ERROR: Apply config to BPF failed: Invalid option for map, add -v to see >> detail >> Opening /sys/kernel/debug/tracing//kprobe_events write= >> ... >> >> Looks like perf sets attr.inherit for cycles? I'll look into this >> problem. > > yes. that's perf default. > How did it even work before?! > I was testing with your samples/bpf/tracex6 that sets inherit to zero. > Tested perf record -i option and it works for me: # echo "" > /sys/kernel/debug/tracing/trace # perf record -i -a -e evt=cycles -e ./test_config_map.c/maps.pmu_map.event=evt/ --exclude-perf ls # cat /sys/kernel/debug/tracing/trace | grep ls ls-8227 [001] dN.. 2526.184611: : pmu inc: 82270 ls-8227 [001] dN.. 2526.184626: : pmu inc: 40951 ls-8227 [001] dN.. 2526.184642: : pmu inc: 50659 ls-8227 [001] dN.. 2526.184657: : pmu inc: 43511 ls-8227 [001] dN.. 2526.184675: : pmu inc: 56921 ... And no warning message found in dmesg. So I think your fix is good, we should improve perf. Thank you.