]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - kernel/trace/trace_printk.c
Merge remote-tracking branch 'cgroup/for-next'
[karo-tx-linux.git] / kernel / trace / trace_printk.c
index 36c1455b7567ee11f2305cc71b2aa9f48c2a0ae1..1c2b28536feb8113a408b2335c38fb0a0c4272e1 100644 (file)
@@ -178,6 +178,12 @@ static inline void format_mod_start(void) { }
 static inline void format_mod_stop(void) { }
 #endif /* CONFIG_MODULES */
 
+static bool __read_mostly trace_printk_enabled = true;
+
+void trace_printk_control(bool enabled)
+{
+       trace_printk_enabled = enabled;
+}
 
 __initdata_or_module static
 struct notifier_block module_trace_bprintk_format_nb = {
@@ -192,7 +198,7 @@ int __trace_bprintk(unsigned long ip, const char *fmt, ...)
        if (unlikely(!fmt))
                return 0;
 
-       if (!(trace_flags & TRACE_ITER_PRINTK))
+       if (!trace_printk_enabled)
                return 0;
 
        va_start(ap, fmt);
@@ -207,7 +213,7 @@ int __ftrace_vbprintk(unsigned long ip, const char *fmt, va_list ap)
        if (unlikely(!fmt))
                return 0;
 
-       if (!(trace_flags & TRACE_ITER_PRINTK))
+       if (!trace_printk_enabled)
                return 0;
 
        return trace_vbprintk(ip, fmt, ap);
@@ -219,7 +225,7 @@ int __trace_printk(unsigned long ip, const char *fmt, ...)
        int ret;
        va_list ap;
 
-       if (!(trace_flags & TRACE_ITER_PRINTK))
+       if (!trace_printk_enabled)
                return 0;
 
        va_start(ap, fmt);
@@ -231,7 +237,7 @@ EXPORT_SYMBOL_GPL(__trace_printk);
 
 int __ftrace_vprintk(unsigned long ip, const char *fmt, va_list ap)
 {
-       if (!(trace_flags & TRACE_ITER_PRINTK))
+       if (!trace_printk_enabled)
                return 0;
 
        return trace_vprintk(ip, fmt, ap);