[PATCH 1/3] drm: extra printk() wrapper macros
Eric Engestrom
eric.engestrom at imgtec.com
Tue Jul 12 11:06:16 UTC 2016
On Mon, Jul 11, 2016 at 07:01:27PM +0100, Dave Gordon wrote:
> We had only DRM_INFO() and DRM_ERROR(), whereas the underlying printk()
> provides several other useful intermediate levels such as NOTICE and
> WARNING. So this patch fills out the set by providing both regular and
> once-only macros for each of the levels INFO, NOTICE, and WARNING, using
> a common underlying macro that does all the token-pasting.
>
> DRM_ERROR is unchanged, as it's not just a printk wrapper.
>
> Signed-off-by: Dave Gordon <david.s.gordon at intel.com>
> ---
> include/drm/drmP.h | 26 ++++++++++++++++++++------
> 1 file changed, 20 insertions(+), 6 deletions(-)
>
> diff --git a/include/drm/drmP.h b/include/drm/drmP.h
> index cf918e3e..82648b1 100644
> --- a/include/drm/drmP.h
> +++ b/include/drm/drmP.h
> @@ -162,6 +162,26 @@ void drm_err(const char *format, ...);
> /** \name Macros to make printk easier */
> /*@{*/
>
> +#define _DRM_PRINTK(once, level, fmt, ...) \
Tab after `#define`?
> + do { \
> + printk##once(KERN_##level "[" DRM_NAME "] " fmt, \
> + ##__VA_ARGS__); \
> + } while (0)
> +
> +#define DRM_INFO(fmt, ...) \
> + _DRM_PRINTK(, INFO, fmt, ##__VA_ARGS__)
> +#define DRM_NOTE(fmt, ...) \
> + _DRM_PRINTK(, NOTICE, fmt, ##__VA_ARGS__)
> +#define DRM_WARN(fmt, ...) \
> + _DRM_PRINTK(, WARNING, fmt, ##__VA_ARGS__)
> +
> +#define DRM_INFO_ONCE(fmt, ...) \
> + _DRM_PRINTK(_once, INFO, fmt, __VA_ARGS__)
Missing ## here; should be: ##__VA_ARGS__
The rest looks good.
Reviewed-by: Eric Engestrom <eric.engestrom at imgtec.com>
> +#define DRM_NOTE_ONCE(fmt, ...) \
> + _DRM_PRINTK(_once, NOTICE, fmt, ##__VA_ARGS__)
> +#define DRM_WARN_ONCE(fmt, ...) \
> + _DRM_PRINTK(_once, WARNING, fmt, ##__VA_ARGS__)
> +
> /**
> * Error output.
> *
> @@ -187,12 +207,6 @@ void drm_err(const char *format, ...);
> drm_err(fmt, ##__VA_ARGS__); \
> })
>
> -#define DRM_INFO(fmt, ...) \
> - printk(KERN_INFO "[" DRM_NAME "] " fmt, ##__VA_ARGS__)
> -
> -#define DRM_INFO_ONCE(fmt, ...) \
> - printk_once(KERN_INFO "[" DRM_NAME "] " fmt, ##__VA_ARGS__)
> -
> /**
> * Debug output.
> *
> --
> 1.9.1
More information about the dri-devel
mailing list