Re: [PATCH 1/1] drm: use drm_warn() in validate_blend_mode_for_alpha_formats()

Leandro Ribeiro <[email protected]>
Newsgroups org.freedesktop.lists.dri-devel,org.kernel.vger.linux-kernel
Message-ID <[email protected]>

On 7/30/26 6:14 AM, Jani Nikula wrote:
> On Wed, 29 Jul 2026, Leandro Ribeiro <[email protected]> wrote:
>> Commit 860e748bddcc ("drm: ensure blend mode supported if pixel format
>> with alpha exposed") introduced a WARN() to let driver developers know
>> that a previously valid behavior should now be changed.
> 
> I should've chimed in way back when, but in retrospect it's a bit
> presumptuous to add a commit that puts the burden of the change on the
> driver developers, without so much as identifying which drivers or
> getting an ack from them.
> 
> This is really not unlike the __deprecated attribute, see commit
> 771c035372a0 ("deprecate the '__deprecated' attribute warnings entirely
> and for good"), but this one's runtime not build.
> 

I agree. I hadn't considered the driver coordination aspect when
proposing that change.

>> But WARN() should not be used for that, as it's a kernel warning report
>> mechanism for conditions that are not expected to happen. It also
>> produces a stack trace. Instead, a simple warning-level log message
>> should have been used, as drivers were expected to trigger the
>> condition.
>>
>> This is causing problems for fuzzers, as they may stop when encountering
>> a "BUG:" or "WARNING:" in the logs.
>>
>> Replace WARN() with drm_warn() in this function, avoiding these issues.
> 
> Fixes: 860e748bddcc ("drm: ensure blend mode supported if pixel format with alpha exposed")
> 
>> Signed-off-by: Leandro Ribeiro <[email protected]>
>> ---
>>  drivers/gpu/drm/drm_mode_config.c | 5 +++--
>>  1 file changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/drm_mode_config.c b/drivers/gpu/drm/drm_mode_config.c
>> index 3bcc7bf0900c..3d9c554e08a8 100644
>> --- a/drivers/gpu/drm/drm_mode_config.c
>> +++ b/drivers/gpu/drm/drm_mode_config.c
>> @@ -869,8 +869,9 @@ static void validate_blend_mode_for_alpha_formats(struct drm_plane *plane)
>>  	for (i = 0; i < plane->format_count; i++) {
>>  		fmt = drm_format_info(plane->format_types[i]);
>>  		if (fmt->has_alpha) {
>> -			WARN(1, "[PLANE:%d:%s] pixel format with alpha exposed but blend mode not setup",
>> -			     plane->base.id, plane->name);
>> +			drm_warn(plane->dev,
>> +				 "[PLANE:%d:%s] pixel format with alpha exposed but blend mode not setup",
>> +				 plane->base.id, plane->name);
>>  			break;
>>  		}
>>  	}
> 

-- 
Leandro Ribeiro
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.