Re: [PATCH 1/2] drm: Only #define DEBUG if CONFIG_DYNAMIC_DEBUG is disabled
From: Michel DÃnzer
Date: Thu Dec 06 2018 - 04:21:50 EST
On 2018-12-06 10:12 a.m., Chris Wilson wrote:
> Quoting Zhang, Jerry(Junwei) (2018-12-06 02:40:42)
>> On 12/6/18 12:56 AM, Michel DÃnzer wrote:
>>> From: Michel DÃnzer <michel.daenzer@xxxxxxx>
>>>
>>> The following cases are possible for pr_debug():
>>>
>>> 1. CONFIG_DYNAMIC_DEBUG disabled
>>> a) DEBUG not defined: pr_debug() translates to no_printk(...), i.e.
>>> it never generates any output.
>>> b) DEBUG defined: pr_debug() translates to printk(KERN_DEBUG ...),
>>> i.e. it generates output which doesn't appear in dmesg by default,
>>> can be enabled dynamically.
>>>
>>> 2. CONFIG_DYNAMIC_DEBUG enabled: pr_debug() translates to
>>> dynamic_pr_debug()
>>> a) DEBUG not defined: dynamic_pr_debug() generates no output by
>>> default, can be enabled dynamically.
>>> b) DEBUG defined: dynamic_pr_debug() generates output by default,
>>> can be disabled dynamically.
>>>
>>> The intention for drm_debug_printer() is to generate output which
>>> doesn't appear in dmesg by default, but can be enabled dynamically, i.e.
>>> cases 1b) and 2a). However, defining DEBUG unconditionally gave us 2b)
>>> instead of 2a) with CONFIG_DYNAMIC_DEBUG enabled.
>>>
>>> Fixes: 79a5ad2fdb3c ("drm: Enable pr_debug() for drm_printer")
>>> Signed-off-by: Michel DÃnzer <michel.daenzer@xxxxxxx>
>> Reviewed-by: Junwei Zhang <Jerry.Zhang@xxxxxxx>
>
> At the cost of 1a? Nah.
We still #define DEBUG if CONFIG_DYNAMIC_DEBUG isn't defined, so it's
still 1b), not 1a).
--
Earthling Michel DÃnzer | http://www.amd.com
Libre software enthusiast | Mesa and X developer