[PATCH v2 37/59] drm-dyndbg: adapt DRM to invoke DYNAMIC_DEBUG_CLASSMAP_PARAM

Louis Chauvet louis.chauvet at bootlin.com
Mon Mar 24 15:23:37 UTC 2025



Le 20/03/2025 à 19:52, Jim Cromie a écrit :
> Invoke DYNAMIC_DEBUG_CLASSMAP_PARAM to hook drm.debug (__drm_debug) to the
> DRM_UT_* classmap, replacing the ad-hoc wiring previously doing it.
> 
> Add DRM_CLASSMAP_* adapter macros to selectively use
> DYNAMIC_DEBUG_CLASSMAP_* when DRM_USE_DYNAMIC_DEBUG=y is configured.
> 
> Signed-off-by: Jim Cromie <jim.cromie at gmail.com>

Reviewed-by: Louis Chauvet <louis.chauvet at bootlin.com>

> ---
>   drivers/gpu/drm/drm_print.c | 8 ++------
>   include/drm/drm_print.h     | 4 ++++
>   2 files changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_print.c b/drivers/gpu/drm/drm_print.c
> index a3b70d104afa..46d53fe30204 100644
> --- a/drivers/gpu/drm/drm_print.c
> +++ b/drivers/gpu/drm/drm_print.c
> @@ -69,12 +69,8 @@ DRM_CLASSMAP_DEFINE(drm_debug_classes, DD_CLASS_TYPE_DISJOINT_BITS,
>   		    "DRM_UT_DP",
>   		    "DRM_UT_DRMRES");
>   
> -static struct ddebug_class_param drm_debug_bitmap = {
> -	.bits = &__drm_debug,
> -	.flags = "p",
> -	.map = &drm_debug_classes,
> -};
> -module_param_cb(debug, &param_ops_dyndbg_classes, &drm_debug_bitmap, 0600);
> +DRM_CLASSMAP_PARAM_REF(debug, __drm_debug, drm_debug_classes, p);
> +
>   #endif
>   
>   void __drm_puts_coredump(struct drm_printer *p, const char *str)
> diff --git a/include/drm/drm_print.h b/include/drm/drm_print.h
> index e86ebb716b4c..8758449491b8 100644
> --- a/include/drm/drm_print.h
> +++ b/include/drm/drm_print.h
> @@ -144,9 +144,13 @@ enum drm_debug_category {
>   #ifdef CONFIG_DRM_USE_DYNAMIC_DEBUG
>   #define DRM_CLASSMAP_DEFINE(...)    DYNAMIC_DEBUG_CLASSMAP_DEFINE(__VA_ARGS__)
>   #define DRM_CLASSMAP_USE(name)      DYNAMIC_DEBUG_CLASSMAP_USE(name)
> +#define DRM_CLASSMAP_PARAM_REF(...) DYNAMIC_DEBUG_CLASSMAP_PARAM_REF(__VA_ARGS__)
> +#define DRM_CLASSMAP_PARAM(...)     DYNAMIC_DEBUG_CLASSMAP_PARAM(__VA_ARGS__)
>   #else
>   #define DRM_CLASSMAP_DEFINE(...)
>   #define DRM_CLASSMAP_USE(name)
> +#define DRM_CLASSMAP_PARAM_REF(...)
> +#define DRM_CLASSMAP_PARAM(...)
>   #endif
>   
>   static inline bool drm_debug_enabled_raw(enum drm_debug_category category)

-- 
Louis Chauvet, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com




More information about the Intel-gfx-trybot mailing list