lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 25 Aug 2020 17:33:37 +0200 From: Vincent Whitchurch <vincent.whitchurch@...s.com> To: <jbaron@...mai.com>, <rostedt@...dmis.org>, <mingo@...hat.com> CC: <kernel@...s.com>, <corbet@....net>, <pmladek@...e.com>, <sergey.senozhatsky@...il.com>, <john.ogness@...utronix.de>, <linux-kernel@...r.kernel.org>, Vincent Whitchurch <vincent.whitchurch@...s.com> Subject: [PATCH v3 1/2] dynamic debug: split enable and printk flags We're going to add support to allow dynamic debug locations to print to a trace event, and that will make _DPRINTK_FLAGS_PRINT a bit ambiguous. Will it mean printk(), or printing to the trace event, or any of the two? To make it clearer, split _DPRINTK_FLAGS_PRINT into two: (1) _DPRINTK_FLAGS_PRINTK for turning on the printk() and (2) _DPRINTK_FLAGS_ENABLE when checking if the dynamic debug location is enabled. _DPRINTK_FLAGS_ENABLE is currently just an alias of _DPRINTK_FLAGS_PRINTK but will later also include a new flag for enabling printing to the trace event. Signed-off-by: Vincent Whitchurch <vincent.whitchurch@...s.com> --- include/linux/dynamic_debug.h | 9 +++++---- lib/dynamic_debug.c | 8 ++++---- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/include/linux/dynamic_debug.h b/include/linux/dynamic_debug.h index aa9ff9e1c0b3..738421898aac 100644 --- a/include/linux/dynamic_debug.h +++ b/include/linux/dynamic_debug.h @@ -27,13 +27,14 @@ struct _ddebug { * writes commands to <debugfs>/dynamic_debug/control */ #define _DPRINTK_FLAGS_NONE 0 -#define _DPRINTK_FLAGS_PRINT (1<<0) /* printk() a message using the format */ +#define _DPRINTK_FLAGS_PRINTK (1<<0) /* printk() a message using the format */ #define _DPRINTK_FLAGS_INCL_MODNAME (1<<1) #define _DPRINTK_FLAGS_INCL_FUNCNAME (1<<2) #define _DPRINTK_FLAGS_INCL_LINENO (1<<3) #define _DPRINTK_FLAGS_INCL_TID (1<<4) +#define _DPRINTK_FLAGS_ENABLE _DPRINTK_FLAGS_PRINTK #if defined DEBUG -#define _DPRINTK_FLAGS_DEFAULT _DPRINTK_FLAGS_PRINT +#define _DPRINTK_FLAGS_DEFAULT _DPRINTK_FLAGS_PRINTK #else #define _DPRINTK_FLAGS_DEFAULT 0 #endif @@ -111,10 +112,10 @@ void __dynamic_ibdev_dbg(struct _ddebug *descriptor, #ifdef DEBUG #define DYNAMIC_DEBUG_BRANCH(descriptor) \ - likely(descriptor.flags & _DPRINTK_FLAGS_PRINT) + likely(descriptor.flags & _DPRINTK_FLAGS_ENABLE) #else #define DYNAMIC_DEBUG_BRANCH(descriptor) \ - unlikely(descriptor.flags & _DPRINTK_FLAGS_PRINT) + unlikely(descriptor.flags & _DPRINTK_FLAGS_ENABLE) #endif #endif diff --git a/lib/dynamic_debug.c b/lib/dynamic_debug.c index 1d012e597cc3..88af85cb5222 100644 --- a/lib/dynamic_debug.c +++ b/lib/dynamic_debug.c @@ -84,7 +84,7 @@ static inline const char *trim_prefix(const char *path) } static struct { unsigned flag:8; char opt_char; } opt_array[] = { - { _DPRINTK_FLAGS_PRINT, 'p' }, + { _DPRINTK_FLAGS_PRINTK, 'p' }, { _DPRINTK_FLAGS_INCL_MODNAME, 'm' }, { _DPRINTK_FLAGS_INCL_FUNCNAME, 'f' }, { _DPRINTK_FLAGS_INCL_LINENO, 'l' }, @@ -206,10 +206,10 @@ static int ddebug_change(const struct ddebug_query *query, if (newflags == dp->flags) continue; #ifdef CONFIG_JUMP_LABEL - if (dp->flags & _DPRINTK_FLAGS_PRINT) { - if (!(modifiers->flags & _DPRINTK_FLAGS_PRINT)) + if (dp->flags & _DPRINTK_FLAGS_ENABLE) { + if (!(modifiers->flags & _DPRINTK_FLAGS_ENABLE)) static_branch_disable(&dp->key.dd_key_true); - } else if (modifiers->flags & _DPRINTK_FLAGS_PRINT) + } else if (modifiers->flags & _DPRINTK_FLAGS_ENABLE) static_branch_enable(&dp->key.dd_key_true); #endif dp->flags = newflags; -- 2.28.0
Powered by blists - more mailing lists