[PATCH] drm/amd/pm: Avoid more large frame warnings

Palmer Dabbelt palmer at dabbelt.com
Thu Jun 12 21:10:02 UTC 2025


On Thu, 12 Jun 2025 05:29:55 PDT (-0700), lijo.lazar at amd.com wrote:
>
>
> On 6/11/2025 10:30 AM, Lazar, Lijo wrote:
>>
>>
>> On 6/11/2025 2:51 AM, Palmer Dabbelt wrote:
>>> From: Palmer Dabbelt <palmer at dabbelt.com>
>>>
>>> 9KiB frames seem pretty big, but without this I'm getting some warnings
>>> as of 6.16-rc1
>>>
>>>       CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_6_ppt.o
>>>     drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_6_ppt.c: In function 'smu_v13_0_6_get_gpu_metrics':
>>>     drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_6_ppt.c:2885:1: error: the frame size of 8304 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
>>>      2885 | }
>>>           | ^
>>>     cc1: all warnings being treated as errors
>>>
>>
>> Could you also provide your build environment details?
>>
>> With below in Makefile + gcc 11.4.0, stack frame size is 168 bytes.

I'm on GCC 12 on RISC-V (though looks like it showed up somewhere else, 
too).

>>
>> ccflags-y += -fstack-usage
>>
>> smu_v13_0_6_ppt.c:2667:16:smu_v13_0_6_get_gpu_metrics   168     static
>>
>> Thanks,
>> Lijo
>>
>
> Was able to see this issue in one of our systems. This patch fixed that
> -  https://patchwork.freedesktop.org/patch/658216/
>
> Please try and let me know if it works for your config.

Thanks, I just threw it at the tester.  I'll go post a Reviewed-by at 
https://lore.kernel.org/all/20250612122321.801690-1-lijo.lazar@amd.com/ 
if it works...

>
> Thanks,
> Lijo
>
>>> Signed-off-by: Palmer Dabbelt <palmer at dabbelt.com>
>>> ---
>>>  drivers/gpu/drm/amd/pm/swsmu/smu13/Makefile | 10 ++++++++++
>>>  1 file changed, 10 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/Makefile b/drivers/gpu/drm/amd/pm/swsmu/smu13/Makefile
>>> index 51f1fa9789ab..9824b7f4827f 100644
>>> --- a/drivers/gpu/drm/amd/pm/swsmu/smu13/Makefile
>>> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/Makefile
>>> @@ -23,9 +23,19 @@
>>>  # Makefile for the 'smu manager' sub-component of powerplay.
>>>  # It provides the smu management services for the driver.
>>>
>>> +ifneq ($(CONFIG_FRAME_WARN),0)
>>> +    frame_warn_limit := 9216
>>> +    ifeq ($(call test-lt, $(CONFIG_FRAME_WARN), $(frame_warn_limit)),y)
>>> +        frame_warn_flag := -Wframe-larger-than=$(frame_warn_limit)
>>> +    endif
>>> +endif
>>> +
>>>  SMU13_MGR = smu_v13_0.o aldebaran_ppt.o yellow_carp_ppt.o smu_v13_0_0_ppt.o smu_v13_0_4_ppt.o \
>>>  	    smu_v13_0_5_ppt.o smu_v13_0_7_ppt.o smu_v13_0_6_ppt.o smu_v13_0_12_ppt.o
>>>
>>>  AMD_SWSMU_SMU13MGR = $(addprefix $(AMD_SWSMU_PATH)/smu13/,$(SMU13_MGR))
>>>
>>>  AMD_POWERPLAY_FILES += $(AMD_SWSMU_SMU13MGR)
>>> +
>>> +CFLAGS_$(AMD_SWSMU_PATH)/smu13/smu_v13_0_12_ppt.o := $(frame_warn_flag)
>>> +CFLAGS_$(AMD_SWSMU_PATH)/smu13/smu_v13_0_6_ppt.o := $(frame_warn_flag)
>>


More information about the dri-devel mailing list