lkml.org 
[lkml]   [2018]   [Nov]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v3 06/23] linux/printk.h: use unique identifier for each struct _ddebug
    Date
    Changes on x86-64 later in this series require that all struct _ddebug
    descriptors in a translation unit uses distinct identifiers. Realize
    that for pr_debug_ratelimited by generating such an identifier via
    __UNIQUE_ID and pass that to an extra level of macros.

    No functional change.

    Acked-by: Petr Mladek <pmladek@suse.com>
    Acked-by: Jason Baron <jbaron@akamai.com>
    Cc: Steven Rostedt <rostedt@goodmis.org>
    Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
    ---
    include/linux/printk.h | 4 +++-
    1 file changed, 3 insertions(+), 1 deletion(-)

    diff --git a/include/linux/printk.h b/include/linux/printk.h
    index d3ba3245531d..70df2c578d40 100644
    --- a/include/linux/printk.h
    +++ b/include/linux/printk.h
    @@ -460,7 +460,7 @@ extern int kptr_restrict;
    /* If you are writing a driver, please use dev_dbg instead */
    #if defined(CONFIG_DYNAMIC_DEBUG)
    /* descriptor check is first to prevent flooding with "callbacks suppressed" */
    -#define pr_debug_ratelimited(fmt, ...) \
    +#define _pr_debug_ratelimited(descriptor, fmt, ...) \
    do { \
    static DEFINE_RATELIMIT_STATE(_rs, \
    DEFAULT_RATELIMIT_INTERVAL, \
    @@ -470,6 +470,8 @@ do { \
    __ratelimit(&_rs)) \
    __dynamic_pr_debug(&descriptor, pr_fmt(fmt), ##__VA_ARGS__); \
    } while (0)
    +#define pr_debug_ratelimited(fmt, ...) \
    + _pr_debug_ratelimited(__UNIQUE_ID(ddebug), fmt, ##__VA_ARGS__)
    #elif defined(DEBUG)
    #define pr_debug_ratelimited(fmt, ...) \
    printk_ratelimited(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
    --
    2.19.1.6.gbde171bbf5
    \
     
     \ /
      Last update: 2018-11-10 00:13    [W:2.301 / U:0.080 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site