Received: by 10.192.165.148 with SMTP id m20csp4957331imm; Tue, 24 Apr 2018 11:09:58 -0700 (PDT) X-Google-Smtp-Source: AIpwx4+CntLVygGxUxiRQrV5HYjo+pd3BiXdYWttg3c0IRVOm3PUhogk0GbeXfaM5xhH+OZKfIvY X-Received: by 10.101.102.143 with SMTP id b15mr20512078pgw.183.1524593398212; Tue, 24 Apr 2018 11:09:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1524593398; cv=none; d=google.com; s=arc-20160816; b=GwNLcaBFfWh83RtIht1aTE+56mwmKLIwSBRFzVeqp6w5tj3apZd5o6H0J98aQsxIkt 6zrvWp3uehGwyBrYohtMtenspJUZ7y4YyXcTiSNf+4um0xvJibSPnaAaqqwwmCmoIN+h VQNFHWgey/QAZxG6V8OoELMbTGAzLK1wRzd80qmNN2BLAIln5LOLi6yr/qnuYfYfwUQ5 iDbZhayndB36gqgsIk8BtgUQIZ8X0JNbsfcDYGZvqtRXLH2rGd3SOUiCyMihXsfv34Vk tK79rTz0oJYQHUUxq8oxZMjHV7hNq71afm2peujZ3JzbARVJvCwWYmtXWJ0rVyqewsl3 F9tQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:to:message-id:date:subject:cc:from :dkim-signature:arc-authentication-results; bh=T1UekXwdlgK45FRXnyXI2UUf8CYIZDJO2HVUO0XJo3g=; b=Hwz1ZCy/B1nC896YM18tDLEGBHCH25+MACitYe2fFkiNuV24TcAAknqhxMzgK6EBrB 7mH3xWvI/MvjP2mksNcR1YaoMSSr0VT64b1Fd1sWl6mmXM3bGFTmLDwFKinIQJ9Enr+j FLAE4HtemDzl3eUaaJhVcKNfqcfM4nxc8ANZwmmBFpiEmUqYLtDMO1lpCJUKjvdFjice rTuDMhguy3N5v6HZ5BLLwPH9kTYmNXi60qCtFwSLKiZj7KbiFvuo8bjj2fYUUaWmjW67 96aD2M14JkSrbhAtuTGXFs+4eTNhbY2d7iuWPT1QVzg4kBHgu6qKHQy+x6Bk6ZoblTQw 5qrg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@google.com header.s=20161025 header.b=gewlHgyj; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=REJECT sp=REJECT dis=REJECT) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w15-v6si14756265plq.183.2018.04.24.11.09.43; Tue, 24 Apr 2018 11:09:58 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@google.com header.s=20161025 header.b=gewlHgyj; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=REJECT sp=REJECT dis=REJECT) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751957AbeDXSIW (ORCPT + 99 others); Tue, 24 Apr 2018 14:08:22 -0400 Received: from mail-pf0-f196.google.com ([209.85.192.196]:41924 "EHLO mail-pf0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750841AbeDXSIS (ORCPT ); Tue, 24 Apr 2018 14:08:18 -0400 Received: by mail-pf0-f196.google.com with SMTP id v63so3345480pfk.8 for ; Tue, 24 Apr 2018 11:08:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=T1UekXwdlgK45FRXnyXI2UUf8CYIZDJO2HVUO0XJo3g=; b=gewlHgyjIBauBOCmhaqT1dSUqHeYs6BqL7DA5zfDUOapeBXsJpmt/lTKZNtaTTRA54 LrEHDStMvfl12pdLkRN9VP0XJeo+BTR0k8MEfTpIr9Wtnejuq5TkfIleJXAlL1n/T66M YlmyzD3cQ5qgfFlFesuDDYKvYytMGkkLSaLMpzi3qbVv/RA5lVY9fl8gPtQqiO5umdSd LNTCA07+iDNz1UAIquyZ2CU3o3fkcCDkhvzT38oIn4fttuP+kYBaKZUkvlKcY550IUBJ jRZ6TJIH17j93US547Vh18iEx4Hm8vDHoA7EGT1EdLZuXODuTO6S1XC9NOrUAGvtWMoT aSag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=T1UekXwdlgK45FRXnyXI2UUf8CYIZDJO2HVUO0XJo3g=; b=MSmSiS+X6t0BR5b+q3c/JIi0WWKq4sGi4bCVRmQkvrY58OYEn/uSgaHNI2vYnJsR7m xcIzIv53vB34uJBetiP2m0AJCPYthHnQ+LlIym4Bu0PKlxcKcfRVQO5JCESJhj1P0gFX rLSoj167ORBorwaDFVwecwNqZItywNsRWROYFWh/WHdjbXfF0+K5RzJUqaoI28WZbHF3 QD+G9OSGoaZqbO1W+8RnrG31LN98g8JnB02UKrBWBBEr7tOJrwBLnGEGSF+enMuQtlMl zadMT1OFN9cYFmEf3E5Wvc05EIWw9oAqOQv+B/paEX0gyLcsnagUeE7zrBskYGPMvb60 2/jA== X-Gm-Message-State: ALQs6tC3A2Tie9S8odBJobik+WHeTo1kXs8P7lW/38y7hOnh5efiN4d0 /MVrpxDvgSwcfYbKK67T2QpOWw== X-Received: by 2002:a17:902:b112:: with SMTP id q18-v6mr26105962plr.371.1524593297252; Tue, 24 Apr 2018 11:08:17 -0700 (PDT) Received: from wvw-pc1.mtv.corp.google.com ([2620:0:1000:1612:84ca:16e0:5117:522f]) by smtp.gmail.com with ESMTPSA id a81sm37715372pfc.168.2018.04.24.11.08.15 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 24 Apr 2018 11:08:16 -0700 (PDT) From: Wei Wang X-Google-Original-From: Wei Wang < wvw@google.com > Cc: gregkh@linuxfoundation.org, wei.vince.wang@gmail.com, Wei Wang , Steven Rostedt , Ingo Molnar , Andrew Morton , Kees Cook , Peter Zijlstra , Thomas Gleixner , Crt Mori , Alexei Starovoitov , Randy Dunlap , linux-kernel@vger.kernel.org Subject: [PATCH] do not call trace_printk on non-debug build Date: Tue, 24 Apr 2018 11:08:10 -0700 Message-Id: <20180424180812.215900-1-wvw@google.com> X-Mailer: git-send-email 2.17.0.484.g0c8726318c-goog To: unlisted-recipients:; (no To-header on input) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Wei Wang trace_printk will cause trace_printk_init_buffers executed in kernel start, which will increase memory and also show bad warnings in production kernel. Signed-off-by: Wei Wang --- include/linux/kernel.h | 17 +++++++++++++++++ include/linux/trace_events.h | 4 ++++ 2 files changed, 21 insertions(+) diff --git a/include/linux/kernel.h b/include/linux/kernel.h index 6a1eb0b0aad96..f1a003e5986a9 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h @@ -677,6 +677,7 @@ do { \ * let gcc optimize the rest. */ +#if defined(DEBUG) #define trace_printk(fmt, ...) \ do { \ char _______STR[] = __stringify((__VA_ARGS__)); \ @@ -685,7 +686,11 @@ do { \ else \ trace_puts(fmt); \ } while (0) +#else +#define trace_printk(fmt, ...) +#endif +#if defined(DEBUG) #define do_trace_printk(fmt, args...) \ do { \ static const char *trace_printk_fmt __used \ @@ -699,6 +704,9 @@ do { \ else \ __trace_printk(_THIS_IP_, fmt, ##args); \ } while (0) +#else +#define do_trace_printk(fmt, args...) +#endif extern __printf(2, 3) int __trace_bprintk(unsigned long ip, const char *fmt, ...); @@ -731,6 +739,7 @@ int __trace_printk(unsigned long ip, const char *fmt, ...); * (1 when __trace_bputs is used, strlen(str) when __trace_puts is used) */ +#if defined(DEBUG) #define trace_puts(str) ({ \ static const char *trace_printk_fmt __used \ __attribute__((section("__trace_printk_fmt"))) = \ @@ -741,6 +750,10 @@ int __trace_printk(unsigned long ip, const char *fmt, ...); else \ __trace_puts(_THIS_IP_, str, strlen(str)); \ }) +#else +#define trace_puts(str) +#endif + extern int __trace_bputs(unsigned long ip, const char *str); extern int __trace_puts(unsigned long ip, const char *str, int size); @@ -751,6 +764,7 @@ extern void trace_dump_stack(int skip); * if we try to allocate the static variable to fmt if it is not a * constant. Even with the outer if statement. */ +#if defined(DEBUG) #define ftrace_vprintk(fmt, vargs) \ do { \ if (__builtin_constant_p(fmt)) { \ @@ -762,6 +776,9 @@ do { \ } else \ __ftrace_vprintk(_THIS_IP_, fmt, vargs); \ } while (0) +#else +#define ftrace_vprintk(fmt, vargs) +#endif extern __printf(2, 0) int __ftrace_vbprintk(unsigned long ip, const char *fmt, va_list ap); diff --git a/include/linux/trace_events.h b/include/linux/trace_events.h index 2bde3eff564cd..433208a1c6009 100644 --- a/include/linux/trace_events.h +++ b/include/linux/trace_events.h @@ -533,6 +533,7 @@ int trace_set_clr_event(const char *system, const char *event, int set); * if we try to allocate the static variable to fmt if it is not a * constant. Even with the outer if statement optimizing out. */ +#if defined(DEBUG) #define event_trace_printk(ip, fmt, args...) \ do { \ __trace_printk_check_format(fmt, ##args); \ @@ -546,6 +547,9 @@ do { \ } else \ __trace_printk(ip, fmt, ##args); \ } while (0) +#else +#define event_trace_printk(ip, fmt, args...) +#endif #ifdef CONFIG_PERF_EVENTS struct perf_event; -- 2.17.0.484.g0c8726318c-goog