• Holger Hoffstätte's avatar
    drm/amd/display: Fix nested FPU context in dcn21_validate_bandwidth() · b42c68fa
    Holger Hoffstätte authored
    Commit 41401ac6 added FPU wrappers to dcn21_validate_bandwidth(),
    which was correct. Unfortunately a nested function alredy contained
    DC_FP_START()/DC_FP_END() calls, which results in nested FPU context
    enter/exit and complaints by kernel_fpu_begin_mask().
    This can be observed e.g. with 5.10.20, which backported 41401ac6
    and now emits the following warning on boot:
    
    WARNING: CPU: 6 PID: 858 at arch/x86/kernel/fpu/core.c:129 kernel_fpu_begin_mask+0xa5/0xc0
    Call Trace:
     dcn21_calculate_wm+0x47/0xa90 [amdgpu]
     dcn21_validate_bandwidth_fp+0x15d/0x2b0 [amdgpu]
     dcn21_validate_bandwidth+0x29/0x40 [amdgpu]
     dc_validate_global_state+0x3c7/0x4c0 [amdgpu]
    
    The warning is emitted due to the additional DC_FP_START/END calls in
    patch_bounding_box(), which is inlined into dcn21_calculate_wm(),
    its only caller. Removing the calls brings the code in line with
    dcn20 and makes the warning disappear.
    
    Fixes: 41401ac6 ("drm/amd/display: Add FPU wrappers to dcn21_validate_bandwidth()")
    Signed-off-by: default avatarHolger Hoffstätte <holger@applied-asynchrony.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    b42c68fa
dcn21_resource.c 59.2 KB