lkml.org 
[lkml]   [2019]   [Apr]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 04/10] dynamic_debug: introduce accessors for string members of struct _ddebug
    Date
    When we introduce compact versions of these pointers (a la
    CONFIG_GENERIC_BUG_RELATIVE_POINTERS), all access to these members must
    go via appropriate accessors. This just mass-converts dynamic_debug.c to
    use the new accessors.

    Acked-by: Jason Baron <jbaron@akamai.com>
    Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
    ---
    lib/dynamic_debug.c | 51 ++++++++++++++++++++++++++++++---------------
    1 file changed, 34 insertions(+), 17 deletions(-)

    diff --git a/lib/dynamic_debug.c b/lib/dynamic_debug.c
    index 7bdf98c37e91..497b1c8ccc2a 100644
    --- a/lib/dynamic_debug.c
    +++ b/lib/dynamic_debug.c
    @@ -37,6 +37,23 @@
    #include <linux/device.h>
    #include <linux/netdevice.h>

    +static inline const char *dd_modname(const struct _ddebug *dd)
    +{
    + return dd->modname;
    +}
    +static inline const char *dd_function(const struct _ddebug *dd)
    +{
    + return dd->function;
    +}
    +static inline const char *dd_filename(const struct _ddebug *dd)
    +{
    + return dd->filename;
    +}
    +static inline const char *dd_format(const struct _ddebug *dd)
    +{
    + return dd->format;
    +}
    +
    extern struct _ddebug __start___verbose[];
    extern struct _ddebug __stop___verbose[];

    @@ -158,21 +175,21 @@ static int ddebug_change(const struct ddebug_query *query,

    /* match against the source filename */
    if (query->filename &&
    - !match_wildcard(query->filename, dp->filename) &&
    + !match_wildcard(query->filename, dd_filename(dp)) &&
    !match_wildcard(query->filename,
    - kbasename(dp->filename)) &&
    + kbasename(dd_filename(dp))) &&
    !match_wildcard(query->filename,
    - trim_prefix(dp->filename)))
    + trim_prefix(dd_filename(dp))))
    continue;

    /* match against the function */
    if (query->function &&
    - !match_wildcard(query->function, dp->function))
    + !match_wildcard(query->function, dd_function(dp)))
    continue;

    /* match against the format */
    if (query->format &&
    - !strstr(dp->format, query->format))
    + !strstr(dd_format(dp), query->format))
    continue;

    /* match against the line number range */
    @@ -197,8 +214,8 @@ static int ddebug_change(const struct ddebug_query *query,
    #endif
    dp->flags = newflags;
    vpr_info("changed %s:%d [%s]%s =%s\n",
    - trim_prefix(dp->filename), dp->lineno,
    - dt->mod_name, dp->function,
    + trim_prefix(dd_filename(dp)), dp->lineno,
    + dt->mod_name, dd_function(dp),
    ddebug_describe_flags(dp, flagbuf,
    sizeof(flagbuf)));
    }
    @@ -533,10 +550,10 @@ static char *dynamic_emit_prefix(const struct _ddebug *desc, char *buf)
    pos_after_tid = pos;
    if (desc->flags & _DPRINTK_FLAGS_INCL_MODNAME)
    pos += snprintf(buf + pos, remaining(pos), "%s:",
    - desc->modname);
    + dd_modname(desc));
    if (desc->flags & _DPRINTK_FLAGS_INCL_FUNCNAME)
    pos += snprintf(buf + pos, remaining(pos), "%s:",
    - desc->function);
    + dd_function(desc));
    if (desc->flags & _DPRINTK_FLAGS_INCL_LINENO)
    pos += snprintf(buf + pos, remaining(pos), "%d:",
    desc->lineno);
    @@ -790,10 +807,10 @@ static int ddebug_proc_show(struct seq_file *m, void *p)
    }

    seq_printf(m, "%s:%u [%s]%s =%s \"",
    - trim_prefix(dp->filename), dp->lineno,
    - iter->table->mod_name, dp->function,
    + trim_prefix(dd_filename(dp)), dp->lineno,
    + iter->table->mod_name, dd_function(dp),
    ddebug_describe_flags(dp, flagsbuf, sizeof(flagsbuf)));
    - seq_escape(m, dp->format, "\t\r\n\"");
    + seq_escape(m, dd_format(dp), "\t\r\n\"");
    seq_puts(m, "\"\n");

    return 0;
    @@ -987,20 +1004,20 @@ static int __init dynamic_debug_init(void)
    return 1;
    }
    iter = __start___verbose;
    - modname = iter->modname;
    + modname = dd_modname(iter);
    iter_start = iter;
    for (; iter < __stop___verbose; iter++) {
    entries++;
    - verbose_bytes += strlen(iter->modname) + strlen(iter->function)
    - + strlen(iter->filename) + strlen(iter->format);
    + verbose_bytes += strlen(dd_modname(iter)) + strlen(dd_function(iter))
    + + strlen(dd_filename(iter)) + strlen(dd_format(iter));

    - if (strcmp(modname, iter->modname)) {
    + if (strcmp(modname, dd_modname(iter))) {
    modct++;
    ret = ddebug_add_module(iter_start, n, modname);
    if (ret)
    goto out_err;
    n = 0;
    - modname = iter->modname;
    + modname = dd_modname(iter);
    iter_start = iter;
    }
    n++;
    --
    2.20.1
    \
     
     \ /
      Last update: 2019-04-09 23:27    [W:4.290 / U:0.092 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site