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: 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 Message-ID: <20190425094803.162400595@linutronix.de> Date: Thu, 25 Apr 2019 11:45:15 +0200 From: Thomas Gleixner 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-arch-owner@vger.kernel.org List-ID: 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 Message-ID: <20190425094515.3wKHI43EwFPcQmL7bZEZGsZotoXFhXR5_Jxr_lkwDBE@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) {