[Intel-gfx] [ [PATCH v2 01/10] drm/print: introduce new struct drm_device based WARN* macros

Jani Nikula jani.nikula at intel.com
Wed Jan 22 15:32:49 UTC 2020


On Wed, 22 Jan 2020, Sean Paul <sean at poorly.run> wrote:
> On Tue, Jan 14, 2020 at 10:49 PM Pankaj Bharadiya
> <pankaj.laxminarayan.bharadiya at intel.com> wrote:
>>
>> Add new struct drm_device based WARN* macros. These are modeled after
>> the core kernel device based WARN* macros. These would be preferred
>> over the regular WARN* macros, where possible.
>>
>> These macros include device information in the backtrace, so we know
>> what device the warnings originate from.
>>
>> Knowing the device specific information in the backtrace would be
>> helpful in development all around.
>>
>> Signed-off-by: Pankaj Bharadiya <pankaj.laxminarayan.bharadiya at intel.com>
>
> Acked-by: Sean Paul <sean at poorly.run>

Maarten and Maxime also provided their acks on IRC. Thanks for the
review and acks, I've pushed this to a topic branch, sent the pull
request for drm-misc-next [1], and pulled the same to
drm-intel-next-queued [2] to unblock further work there.

BR,
Jani.


[1] http://lore.kernel.org/r/87eevrecnf.fsf@intel.com
[2] 7c7d5b1ce739 ("Merge tag 'topic/drm-warn-2020-01-22' of git://anongit.freedesktop.org/drm/drm-intel into drm-intel-next-queued")



>
>> ---
>>  include/drm/drm_print.h | 29 +++++++++++++++++++++++++++++
>>  1 file changed, 29 insertions(+)
>>
>> diff --git a/include/drm/drm_print.h b/include/drm/drm_print.h
>> index 8f99d389792d..894a0b9437e2 100644
>> --- a/include/drm/drm_print.h
>> +++ b/include/drm/drm_print.h
>> @@ -553,4 +553,33 @@ void __drm_err(const char *format, ...);
>>  #define DRM_DEBUG_PRIME_RATELIMITED(fmt, ...)                          \
>>         DRM_DEV_DEBUG_PRIME_RATELIMITED(NULL, fmt, ##__VA_ARGS__)
>>
>> +/*
>> + * struct drm_device based WARNs
>> + *
>> + * drm_WARN*() acts like WARN*(), but with the key difference of
>> + * using device specific information so that we know from which device
>> + * warning is originating from.
>> + *
>> + * Prefer drm_device based drm_WARN* over regular WARN*
>> + */
>> +
>> +/* Helper for struct drm_device based WARNs */
>> +#define drm_WARN(drm, condition, format, arg...)                       \
>> +       WARN(condition, "%s %s: " format,                               \
>> +                       dev_driver_string((drm)->dev),                  \
>> +                       dev_name((drm)->dev), ## arg)
>> +
>> +#define drm_WARN_ONCE(drm, condition, format, arg...)                  \
>> +       WARN_ONCE(condition, "%s %s: " format,                          \
>> +                       dev_driver_string((drm)->dev),                  \
>> +                       dev_name((drm)->dev), ## arg)
>> +
>> +#define drm_WARN_ON(drm, x)                                            \
>> +       drm_WARN((drm), (x), "%s",                                      \
>> +                "drm_WARN_ON(" __stringify(x) ")")
>> +
>> +#define drm_WARN_ON_ONCE(drm, x)                                       \
>> +       drm_WARN_ONCE((drm), (x), "%s",                                 \
>> +                     "drm_WARN_ON_ONCE(" __stringify(x) ")")
>> +
>>  #endif /* DRM_PRINT_H_ */
>> --
>> 2.23.0
>>
>> _______________________________________________
>> Intel-gfx mailing list
>> Intel-gfx at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Jani Nikula, Intel Open Source Graphics Center


More information about the Intel-gfx mailing list