[PATCH 2/3] drm/print: Improve drm_dbg_printer
Jani Nikula
jani.nikula at intel.com
Fri May 17 13:35:12 UTC 2024
On Fri, 17 May 2024, Michal Wajdeczko <michal.wajdeczko at intel.com> wrote:
> With recent introduction of a generic drm dev printk function, we
> can now store and use location where drm_dbg_printer was invoked
> and output it's symbolic name like we do for all drm debug prints.
>
> Signed-off-by: Michal Wajdeczko <michal.wajdeczko at intel.com>
> Cc: Jani Nikula <jani.nikula at intel.com>
> ---
> drivers/gpu/drm/drm_print.c | 3 +--
> include/drm/drm_print.h | 2 ++
> 2 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_print.c b/drivers/gpu/drm/drm_print.c
> index a2b60c8245a1..0a205fdee7cf 100644
> --- a/drivers/gpu/drm/drm_print.c
> +++ b/drivers/gpu/drm/drm_print.c
> @@ -191,8 +191,7 @@ void __drm_printfn_dbg(struct drm_printer *p, struct va_format *vaf)
> if (!__drm_debug_enabled(category))
> return;
>
> - /* Note: __builtin_return_address(0) is useless here. */
> - __drm_dev_vprintk(dev, KERN_DEBUG, NULL, p->prefix, vaf);
> + __drm_dev_vprintk(dev, KERN_DEBUG, p->origin, p->prefix, vaf);
> }
> EXPORT_SYMBOL(__drm_printfn_dbg);
>
> diff --git a/include/drm/drm_print.h b/include/drm/drm_print.h
> index bb1801c58544..761ce01761b7 100644
> --- a/include/drm/drm_print.h
> +++ b/include/drm/drm_print.h
> @@ -175,6 +175,7 @@ struct drm_printer {
> void (*printfn)(struct drm_printer *p, struct va_format *vaf);
> void (*puts)(struct drm_printer *p, const char *str);
> void *arg;
> + const void *origin;
> const char *prefix;
> enum drm_debug_category category;
> };
> @@ -332,6 +333,7 @@ static inline struct drm_printer drm_dbg_printer(struct drm_device *drm,
> struct drm_printer p = {
> .printfn = __drm_printfn_dbg,
> .arg = drm,
> + .origin = (void *)_THIS_IP_, /* it's fine as we will be inlined */
Not that it makes a difference, but I guess I'd cast to (const void *)
to match the member.
Reviewed-by: Jani Nikula <jani.nikula at intel.com>
> .prefix = prefix,
> .category = category,
> };
--
Jani Nikula, Intel
More information about the Intel-gfx
mailing list