Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754626AbbKJROZ (ORCPT ); Tue, 10 Nov 2015 12:14:25 -0500 Received: from mail-pa0-f47.google.com ([209.85.220.47]:34906 "EHLO mail-pa0-f47.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752359AbbKJROX (ORCPT ); Tue, 10 Nov 2015 12:14:23 -0500 Date: Tue, 10 Nov 2015 09:14:22 -0800 From: Alexei Starovoitov To: Steven Rostedt Cc: Daniel Borkmann , Arnd Bergmann , Ingo Molnar , linux-kernel@vger.kernel.org, Alexei Starovoitov , "David S. Miller" , Kaixu Xia , Hannes Frederic Sowa , Wang Nan , netdev@vger.kernel.org, Arnaldo Carvalho de Melo , linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH, REPORT] bpf_trace: build error without PERF_EVENTS Message-ID: <20151110171421.GA21650@ast-mbp.thefacebook.com> References: <4525348.Aq9YoXkChv@wuerfel> <5641F1BA.6040701@iogearbox.net> <20151110092501.0bc676c9@gandalf.local.home> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20151110092501.0bc676c9@gandalf.local.home> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1898 Lines: 48 On Tue, Nov 10, 2015 at 09:25:01AM -0500, Steven Rostedt wrote: > On Tue, 10 Nov 2015 14:31:38 +0100 > Daniel Borkmann wrote: > > > On 11/10/2015 01:55 PM, Arnd Bergmann wrote: > > > In my ARM randconfig tests, I'm getting a build error for > > > newly added code in bpf_perf_event_read and bpf_perf_event_output > > > whenever CONFIG_PERF_EVENTS is disabled: > > > > > > kernel/trace/bpf_trace.c: In function 'bpf_perf_event_read': > > > kernel/trace/bpf_trace.c:203:11: error: 'struct perf_event' has no member named 'oncpu' > > > if (event->oncpu != smp_processor_id() || > > > ^ > > > kernel/trace/bpf_trace.c:204:11: error: 'struct perf_event' has no member named 'pmu' > > > event->pmu->count) > > > > > > This can happen when UPROBE_EVENT is enabled but KPROBE_EVENT > > > is disabled. I'm not sure if that is a configuration we care > > > about, otherwise we could prevent this case from occuring by > > > adding Kconfig dependencies. > > > > I think that seems better than spreading #if IS_ENABLEDs into the code. > > Probably enough to add a 'depends on PERF_EVENTS' to config BPF_EVENTS, > > so it's also explicitly documented. > > > > So just do the following then? > > -- Steve > > diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig > index 8d6363f42169..f5aecff2d243 100644 > --- a/kernel/trace/Kconfig > +++ b/kernel/trace/Kconfig > @@ -434,7 +434,7 @@ config UPROBE_EVENT > > config BPF_EVENTS > depends on BPF_SYSCALL > - depends on KPROBE_EVENT || UPROBE_EVENT > + depends on KPROBE_EVENT && UPROBE_EVENT yeah that's definitely cleaner and avoids ifdef creep in the future. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/