From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8969AC282E3 for ; Thu, 25 Apr 2019 10:02:22 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 63A91206BA for ; Thu, 25 Apr 2019 10:02:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729451AbfDYKA0 (ORCPT ); Thu, 25 Apr 2019 06:00:26 -0400 Received: from Galois.linutronix.de ([146.0.238.70]:57988 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729434AbfDYKAZ (ORCPT ); Thu, 25 Apr 2019 06:00:25 -0400 Received: from localhost ([127.0.0.1] helo=nanos.tec.linutronix.de) by Galois.linutronix.de with esmtp (Exim 4.80) (envelope-from ) id 1hJbAF-0001xP-E1; Thu, 25 Apr 2019 11:59:35 +0200 Message-Id: <20190425094803.162400595@linutronix.de> User-Agent: quilt/0.65 Date: Thu, 25 Apr 2019 11:45:15 +0200 From: Thomas Gleixner To: LKML Cc: Josh Poimboeuf , x86@kernel.org, Andy Lutomirski , Steven Rostedt , Alexander Potapenko , Alexey Dobriyan , Andrew Morton , Christoph Lameter , Pekka Enberg , linux-mm@kvack.org, David Rientjes , Catalin Marinas , Dmitry Vyukov , Andrey Ryabinin , kasan-dev@googlegroups.com, Mike Rapoport , Akinobu Mita , Christoph Hellwig , iommu@lists.linux-foundation.org, Robin Murphy , Marek Szyprowski , Johannes Thumshirn , David Sterba , Chris Mason , Josef Bacik , linux-btrfs@vger.kernel.org, dm-devel@redhat.com, Mike Snitzer , Alasdair Kergon , Daniel Vetter , intel-gfx@lists.freedesktop.org, Joonas Lahtinen , Maarten Lankhorst , dri-devel@lists.freedesktop.org, David Airlie , Jani Nikula , Rodrigo Vivi , Tom Zanussi , Miroslav Benes , linux-arch@vger.kernel.org Subject: [patch V3 22/29] tracing: Make ftrace_trace_userstack() static and conditional References: <20190425094453.875139013@linutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-btrfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-btrfs@vger.kernel.org It's only used in trace.c and there is absolutely no point in compiling it in when user space stack traces are not supported. Signed-off-by: Thomas Gleixner Reviewed-by: Steven Rostedt --- kernel/trace/trace.c | 14 ++++++++------ kernel/trace/trace.h | 8 -------- 2 files changed, 8 insertions(+), 14 deletions(-) --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -159,6 +159,8 @@ static union trace_eval_map_item *trace_ #endif /* CONFIG_TRACE_EVAL_MAP_FILE */ static int tracing_set_tracer(struct trace_array *tr, const char *buf); +static void ftrace_trace_userstack(struct ring_buffer *buffer, + unsigned long flags, int pc); #define MAX_TRACER_SIZE 100 static char bootup_tracer_buf[MAX_TRACER_SIZE] __initdata; @@ -2905,9 +2907,10 @@ void trace_dump_stack(int skip) } EXPORT_SYMBOL_GPL(trace_dump_stack); +#ifdef CONFIG_USER_STACKTRACE_SUPPORT static DEFINE_PER_CPU(int, user_stack_count); -void +static void ftrace_trace_userstack(struct ring_buffer *buffer, unsigned long flags, int pc) { struct trace_event_call *call = &event_user_stack; @@ -2958,13 +2961,12 @@ ftrace_trace_userstack(struct ring_buffe out: preempt_enable(); } - -#ifdef UNUSED -static void __trace_userstack(struct trace_array *tr, unsigned long flags) +#else /* CONFIG_USER_STACKTRACE_SUPPORT */ +static void ftrace_trace_userstack(struct ring_buffer *buffer, + unsigned long flags, int pc) { - ftrace_trace_userstack(tr, flags, preempt_count()); } -#endif /* UNUSED */ +#endif /* !CONFIG_USER_STACKTRACE_SUPPORT */ #endif /* CONFIG_STACKTRACE */ --- a/kernel/trace/trace.h +++ b/kernel/trace/trace.h @@ -782,17 +782,9 @@ void update_max_tr_single(struct trace_a #endif /* CONFIG_TRACER_MAX_TRACE */ #ifdef CONFIG_STACKTRACE -void ftrace_trace_userstack(struct ring_buffer *buffer, unsigned long flags, - int pc); - void __trace_stack(struct trace_array *tr, unsigned long flags, int skip, int pc); #else -static inline void ftrace_trace_userstack(struct ring_buffer *buffer, - unsigned long flags, int pc) -{ -} - static inline void __trace_stack(struct trace_array *tr, unsigned long flags, int skip, int pc) { From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Gleixner Subject: [patch V3 22/29] tracing: Make ftrace_trace_userstack() static and conditional Date: Thu, 25 Apr 2019 11:45:15 +0200 Message-ID: <20190425094803.162400595@linutronix.de> References: <20190425094453.875139013@linutronix.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: LKML Cc: Mike Snitzer , David Airlie , Catalin Marinas , dri-devel@lists.freedesktop.org, linux-mm@kvack.org, dm-devel@redhat.com, Alexander Potapenko , Christoph Lameter , Miroslav Benes , Christoph Hellwig , Alasdair Kergon , Marek Szyprowski , linux-arch@vger.kernel.org, x86@kernel.org, kasan-dev@googlegroups.com, Johannes Thumshirn , Andrey Ryabinin , Alexey Dobriyan , intel-gfx@lists.freedesktop.org, David Rientjes , Akinobu Mita , Steven Rostedt , Josef Bacik , Mike Rapoport , Andy Lutomirski , Josh Poimboeuf List-Id: linux-arch.vger.kernel.org SXQncyBvbmx5IHVzZWQgaW4gdHJhY2UuYyBhbmQgdGhlcmUgaXMgYWJzb2x1dGVseSBubyBwb2lu dCBpbiBjb21waWxpbmcgaXQKaW4gd2hlbiB1c2VyIHNwYWNlIHN0YWNrIHRyYWNlcyBhcmUgbm90 IHN1cHBvcnRlZC4KClNpZ25lZC1vZmYtYnk6IFRob21hcyBHbGVpeG5lciA8dGdseEBsaW51dHJv bml4LmRlPgpSZXZpZXdlZC1ieTogU3RldmVuIFJvc3RlZHQgPHJvc3RlZHRAZ29vZG1pcy5vcmc+ Ci0tLQoga2VybmVsL3RyYWNlL3RyYWNlLmMgfCAgIDE0ICsrKysrKysrLS0tLS0tCiBrZXJuZWwv dHJhY2UvdHJhY2UuaCB8ICAgIDggLS0tLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRp b25zKCspLCAxNCBkZWxldGlvbnMoLSkKCi0tLSBhL2tlcm5lbC90cmFjZS90cmFjZS5jCisrKyBi L2tlcm5lbC90cmFjZS90cmFjZS5jCkBAIC0xNTksNiArMTU5LDggQEAgc3RhdGljIHVuaW9uIHRy YWNlX2V2YWxfbWFwX2l0ZW0gKnRyYWNlXwogI2VuZGlmIC8qIENPTkZJR19UUkFDRV9FVkFMX01B UF9GSUxFICovCiAKIHN0YXRpYyBpbnQgdHJhY2luZ19zZXRfdHJhY2VyKHN0cnVjdCB0cmFjZV9h cnJheSAqdHIsIGNvbnN0IGNoYXIgKmJ1Zik7CitzdGF0aWMgdm9pZCBmdHJhY2VfdHJhY2VfdXNl cnN0YWNrKHN0cnVjdCByaW5nX2J1ZmZlciAqYnVmZmVyLAorCQkJCSAgIHVuc2lnbmVkIGxvbmcg ZmxhZ3MsIGludCBwYyk7CiAKICNkZWZpbmUgTUFYX1RSQUNFUl9TSVpFCQkxMDAKIHN0YXRpYyBj aGFyIGJvb3R1cF90cmFjZXJfYnVmW01BWF9UUkFDRVJfU0laRV0gX19pbml0ZGF0YTsKQEAgLTI5 MDUsOSArMjkwNywxMCBAQCB2b2lkIHRyYWNlX2R1bXBfc3RhY2soaW50IHNraXApCiB9CiBFWFBP UlRfU1lNQk9MX0dQTCh0cmFjZV9kdW1wX3N0YWNrKTsKIAorI2lmZGVmIENPTkZJR19VU0VSX1NU QUNLVFJBQ0VfU1VQUE9SVAogc3RhdGljIERFRklORV9QRVJfQ1BVKGludCwgdXNlcl9zdGFja19j b3VudCk7CiAKLXZvaWQKK3N0YXRpYyB2b2lkCiBmdHJhY2VfdHJhY2VfdXNlcnN0YWNrKHN0cnVj dCByaW5nX2J1ZmZlciAqYnVmZmVyLCB1bnNpZ25lZCBsb25nIGZsYWdzLCBpbnQgcGMpCiB7CiAJ c3RydWN0IHRyYWNlX2V2ZW50X2NhbGwgKmNhbGwgPSAmZXZlbnRfdXNlcl9zdGFjazsKQEAgLTI5 NTgsMTMgKzI5NjEsMTIgQEAgZnRyYWNlX3RyYWNlX3VzZXJzdGFjayhzdHJ1Y3QgcmluZ19idWZm ZQogIG91dDoKIAlwcmVlbXB0X2VuYWJsZSgpOwogfQotCi0jaWZkZWYgVU5VU0VECi1zdGF0aWMg dm9pZCBfX3RyYWNlX3VzZXJzdGFjayhzdHJ1Y3QgdHJhY2VfYXJyYXkgKnRyLCB1bnNpZ25lZCBs b25nIGZsYWdzKQorI2Vsc2UgLyogQ09ORklHX1VTRVJfU1RBQ0tUUkFDRV9TVVBQT1JUICovCitz dGF0aWMgdm9pZCBmdHJhY2VfdHJhY2VfdXNlcnN0YWNrKHN0cnVjdCByaW5nX2J1ZmZlciAqYnVm ZmVyLAorCQkJCSAgIHVuc2lnbmVkIGxvbmcgZmxhZ3MsIGludCBwYykKIHsKLQlmdHJhY2VfdHJh Y2VfdXNlcnN0YWNrKHRyLCBmbGFncywgcHJlZW1wdF9jb3VudCgpKTsKIH0KLSNlbmRpZiAvKiBV TlVTRUQgKi8KKyNlbmRpZiAvKiAhQ09ORklHX1VTRVJfU1RBQ0tUUkFDRV9TVVBQT1JUICovCiAK ICNlbmRpZiAvKiBDT05GSUdfU1RBQ0tUUkFDRSAqLwogCi0tLSBhL2tlcm5lbC90cmFjZS90cmFj ZS5oCisrKyBiL2tlcm5lbC90cmFjZS90cmFjZS5oCkBAIC03ODIsMTcgKzc4Miw5IEBAIHZvaWQg dXBkYXRlX21heF90cl9zaW5nbGUoc3RydWN0IHRyYWNlX2EKICNlbmRpZiAvKiBDT05GSUdfVFJB Q0VSX01BWF9UUkFDRSAqLwogCiAjaWZkZWYgQ09ORklHX1NUQUNLVFJBQ0UKLXZvaWQgZnRyYWNl X3RyYWNlX3VzZXJzdGFjayhzdHJ1Y3QgcmluZ19idWZmZXIgKmJ1ZmZlciwgdW5zaWduZWQgbG9u ZyBmbGFncywKLQkJCSAgICBpbnQgcGMpOwotCiB2b2lkIF9fdHJhY2Vfc3RhY2soc3RydWN0IHRy YWNlX2FycmF5ICp0ciwgdW5zaWduZWQgbG9uZyBmbGFncywgaW50IHNraXAsCiAJCSAgIGludCBw Yyk7CiAjZWxzZQotc3RhdGljIGlubGluZSB2b2lkIGZ0cmFjZV90cmFjZV91c2Vyc3RhY2soc3Ry dWN0IHJpbmdfYnVmZmVyICpidWZmZXIsCi0JCQkJCSAgdW5zaWduZWQgbG9uZyBmbGFncywgaW50 IHBjKQotewotfQotCiBzdGF0aWMgaW5saW5lIHZvaWQgX190cmFjZV9zdGFjayhzdHJ1Y3QgdHJh Y2VfYXJyYXkgKnRyLCB1bnNpZ25lZCBsb25nIGZsYWdzLAogCQkJCSBpbnQgc2tpcCwgaW50IHBj KQogewoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCklu dGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E76E7C10F03 for ; Thu, 25 Apr 2019 10:34:06 +0000 (UTC) Received: from mail.linuxfoundation.org (mail.linuxfoundation.org [140.211.169.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id A44C22084B for ; Thu, 25 Apr 2019 10:34:06 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A44C22084B Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=linutronix.de Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=iommu-bounces@lists.linux-foundation.org Received: from mail.linux-foundation.org (localhost [127.0.0.1]) by mail.linuxfoundation.org (Postfix) with ESMTP id 528F01D3E; Thu, 25 Apr 2019 10:34:06 +0000 (UTC) Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 96EBE1D27 for ; Thu, 25 Apr 2019 10:33:22 +0000 (UTC) X-Greylist: greylisting inactive for cl@linux.com in SQLgrey-1.7.6 X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from Galois.linutronix.de (Galois.linutronix.de [146.0.238.70]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id E9FE182B; Thu, 25 Apr 2019 10:33:21 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=nanos.tec.linutronix.de) by Galois.linutronix.de with esmtp (Exim 4.80) (envelope-from ) id 1hJbAF-0001xP-E1; Thu, 25 Apr 2019 11:59:35 +0200 Message-Id: <20190425094803.162400595@linutronix.de> User-Agent: quilt/0.65 Date: Thu, 25 Apr 2019 11:45:15 +0200 From: Thomas Gleixner To: LKML Subject: [patch V3 22/29] tracing: Make ftrace_trace_userstack() static and conditional References: <20190425094453.875139013@linutronix.de> MIME-Version: 1.0 Cc: Mike Snitzer , David Airlie , Catalin Marinas , Joonas Lahtinen , dri-devel@lists.freedesktop.org, linux-mm@kvack.org, dm-devel@redhat.com, Alexander Potapenko , Christoph Lameter , Miroslav Benes , Christoph Hellwig , Alasdair Kergon , linux-arch@vger.kernel.org, x86@kernel.org, kasan-dev@googlegroups.com, Johannes Thumshirn , Andrey Ryabinin , Alexey Dobriyan , intel-gfx@lists.freedesktop.org, David Rientjes , Maarten Lankhorst , Akinobu Mita , Steven Rostedt , Josef Bacik , Rodrigo Vivi , Mike Rapoport , Jani Nikula , Andy Lutomirski , Josh Poimboeuf , David Sterba , Dmitry Vyukov , Tom Zanussi , Chris Mason , Pekka Enberg , iommu@lists.linux-foundation.org, Daniel Vetter , Andrew Morton , Robin Murphy , linux-btrfs@vger.kernel.org X-BeenThere: iommu@lists.linux-foundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Development issues for Linux IOMMU support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Sender: iommu-bounces@lists.linux-foundation.org Errors-To: iommu-bounces@lists.linux-foundation.org Message-ID: <20190425094515.gCq23kDhY1rm9QRm2dRFfsyhX1SkBR4nsQLba8fxoNE@z> It's only used in trace.c and there is absolutely no point in compiling it in when user space stack traces are not supported. Signed-off-by: Thomas Gleixner Reviewed-by: Steven Rostedt --- kernel/trace/trace.c | 14 ++++++++------ kernel/trace/trace.h | 8 -------- 2 files changed, 8 insertions(+), 14 deletions(-) --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -159,6 +159,8 @@ static union trace_eval_map_item *trace_ #endif /* CONFIG_TRACE_EVAL_MAP_FILE */ static int tracing_set_tracer(struct trace_array *tr, const char *buf); +static void ftrace_trace_userstack(struct ring_buffer *buffer, + unsigned long flags, int pc); #define MAX_TRACER_SIZE 100 static char bootup_tracer_buf[MAX_TRACER_SIZE] __initdata; @@ -2905,9 +2907,10 @@ void trace_dump_stack(int skip) } EXPORT_SYMBOL_GPL(trace_dump_stack); +#ifdef CONFIG_USER_STACKTRACE_SUPPORT static DEFINE_PER_CPU(int, user_stack_count); -void +static void ftrace_trace_userstack(struct ring_buffer *buffer, unsigned long flags, int pc) { struct trace_event_call *call = &event_user_stack; @@ -2958,13 +2961,12 @@ ftrace_trace_userstack(struct ring_buffe out: preempt_enable(); } - -#ifdef UNUSED -static void __trace_userstack(struct trace_array *tr, unsigned long flags) +#else /* CONFIG_USER_STACKTRACE_SUPPORT */ +static void ftrace_trace_userstack(struct ring_buffer *buffer, + unsigned long flags, int pc) { - ftrace_trace_userstack(tr, flags, preempt_count()); } -#endif /* UNUSED */ +#endif /* !CONFIG_USER_STACKTRACE_SUPPORT */ #endif /* CONFIG_STACKTRACE */ --- a/kernel/trace/trace.h +++ b/kernel/trace/trace.h @@ -782,17 +782,9 @@ void update_max_tr_single(struct trace_a #endif /* CONFIG_TRACER_MAX_TRACE */ #ifdef CONFIG_STACKTRACE -void ftrace_trace_userstack(struct ring_buffer *buffer, unsigned long flags, - int pc); - void __trace_stack(struct trace_array *tr, unsigned long flags, int skip, int pc); #else -static inline void ftrace_trace_userstack(struct ring_buffer *buffer, - unsigned long flags, int pc) -{ -} - static inline void __trace_stack(struct trace_array *tr, unsigned long flags, int skip, int pc) { _______________________________________________ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu