lkml.org 
[lkml]   [2011]   [Aug]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH 1/4] dynamic_debug: consolidate repetitive struct _ddebug descriptor definitions
    Replace the repetitive struct _ddebug descriptor definitions with
    a new DECLARE_DYNAMIC_DEBUG_META_DATA(name, fmt) macro.

    Signed-off-by: Jason Baron <jbaron@redhat.com>
    ---
    include/linux/dynamic_debug.h | 64 ++++++++++++++++++++++------------------
    1 files changed, 35 insertions(+), 29 deletions(-)

    diff --git a/include/linux/dynamic_debug.h b/include/linux/dynamic_debug.h
    index feaac1e..8aec680 100644
    --- a/include/linux/dynamic_debug.h
    +++ b/include/linux/dynamic_debug.h
    @@ -54,35 +54,41 @@ extern int __dynamic_netdev_dbg(struct _ddebug *descriptor,
    const char *fmt, ...)
    __attribute__ ((format (printf, 3, 4)));

    -#define dynamic_pr_debug(fmt, ...) do { \
    - static struct _ddebug descriptor \
    - __used \
    - __attribute__((section("__verbose"), aligned(8))) = \
    - { KBUILD_MODNAME, __func__, __FILE__, fmt, __LINE__, \
    - _DPRINTK_FLAGS_DEFAULT }; \
    - if (unlikely(descriptor.enabled)) \
    - __dynamic_pr_debug(&descriptor, pr_fmt(fmt), ##__VA_ARGS__); \
    - } while (0)
    -
    -#define dynamic_dev_dbg(dev, fmt, ...) do { \
    - static struct _ddebug descriptor \
    - __used \
    - __attribute__((section("__verbose"), aligned(8))) = \
    - { KBUILD_MODNAME, __func__, __FILE__, fmt, __LINE__, \
    - _DPRINTK_FLAGS_DEFAULT }; \
    - if (unlikely(descriptor.enabled)) \
    - __dynamic_dev_dbg(&descriptor, dev, fmt, ##__VA_ARGS__); \
    - } while (0)
    -
    -#define dynamic_netdev_dbg(dev, fmt, ...) do { \
    - static struct _ddebug descriptor \
    - __used \
    - __attribute__((section("__verbose"), aligned(8))) = \
    - { KBUILD_MODNAME, __func__, __FILE__, fmt, __LINE__, \
    - _DPRINTK_FLAGS_DEFAULT }; \
    - if (unlikely(descriptor.enabled)) \
    - __dynamic_netdev_dbg(&descriptor, dev, fmt, ##__VA_ARGS__);\
    - } while (0)
    +#define DECLARE_DYNAMIC_DEBUG_METADATA(name, fmt) \
    + static struct _ddebug __used __aligned(8) \
    + __attribute__((section("__verbose"))) name = { \
    + .modname = KBUILD_MODNAME, \
    + .function = __func__, \
    + .filename = __FILE__, \
    + .format = (fmt), \
    + .lineno = __LINE__, \
    + .flags = _DPRINTK_FLAGS_DEFAULT, \
    + .enabled = false, \
    + }
    +
    +#define dynamic_pr_debug(fmt, ...) \
    +do { \
    + DECLARE_DYNAMIC_DEBUG_METADATA(descriptor, fmt); \
    + if (unlikely(descriptor.enabled)) \
    + __dynamic_pr_debug(&descriptor, pr_fmt(fmt), \
    + ##__VA_ARGS__); \
    +} while (0)
    +
    +#define dynamic_dev_dbg(dev, fmt, ...) \
    +do { \
    + DECLARE_DYNAMIC_DEBUG_METADATA(descriptor, fmt); \
    + if (unlikely(descriptor.enabled)) \
    + __dynamic_dev_dbg(&descriptor, dev, fmt, \
    + ##__VA_ARGS__); \
    +} while (0)
    +
    +#define dynamic_netdev_dbg(dev, fmt, ...) \
    +do { \
    + DECLARE_DYNAMIC_DEBUG_METADATA(descriptor, fmt); \
    + if (unlikely(descriptor.enabled)) \
    + __dynamic_netdev_dbg(&descriptor, dev, fmt, \
    + ##__VA_ARGS__); \
    +} while (0)

    #else

    --
    1.7.5.4


    \
     
     \ /
      Last update: 2011-08-30 20:31    [W:0.023 / U:0.420 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site