[PATCH] drm/amd/display: fix modprobe failure on vega series
Lee Jones
lee.jones at linaro.org
Mon Mar 22 09:42:39 UTC 2021
On Mon, 22 Mar 2021, Guchun Chen wrote:
> Fixes: d88b34caee83 ("Remove some large variables from the stack")
>
> [ 41.232097] Call Trace:
> [ 41.232105] kvasprintf+0x66/0xd0
> [ 41.232122] kasprintf+0x49/0x70
> [ 41.232136] __drm_crtc_init_with_planes+0x2e1/0x340 [drm]
> [ 41.232219] ? create_object+0x263/0x3b0
> [ 41.232231] drm_crtc_init_with_planes+0x46/0x60 [drm]
> [ 41.232303] amdgpu_dm_init+0x69c/0x1750 [amdgpu]
> [ 41.232998] ? phm_wait_for_register_unequal.part.1+0x58/0x90 [amdgpu]
> [ 41.233662] ? smu9_wait_for_response+0x7d/0xa0 [amdgpu]
> [ 41.234294] ? smu9_send_msg_to_smc_with_parameter+0x77/0xd0 [amdgpu]
> [ 41.234912] ? smum_send_msg_to_smc_with_parameter+0x96/0x100 [amdgpu]
> [ 41.235520] ? psm_set_states+0x5c/0x60 [amdgpu]
> [ 41.236165] dm_hw_init+0x12/0x20 [amdgpu]
> [ 41.236834] amdgpu_device_init+0x1402/0x1df0 [amdgpu]
> [ 41.237314] amdgpu_driver_load_kms+0x65/0x320 [amdgpu]
> [ 41.237780] amdgpu_pci_probe+0x150/0x250 [amdgpu]
> [ 41.238240] local_pci_probe+0x47/0xa0
> [ 41.238253] pci_device_probe+0x10b/0x1c0
> [ 41.238265] really_probe+0xf5/0x4c0
> [ 41.238275] driver_probe_device+0xe8/0x150
> [ 41.238284] device_driver_attach+0x58/0x60
> [ 41.238293] __driver_attach+0xa3/0x140
> [ 41.238301] ? device_driver_attach+0x60/0x60
> [ 41.238309] ? device_driver_attach+0x60/0x60
> [ 41.238317] bus_for_each_dev+0x74/0xb0
> [ 41.238330] ? kmem_cache_alloc_trace+0x31a/0x470
> [ 41.238341] driver_attach+0x1e/0x20
> [ 41.238348] bus_add_driver+0x14a/0x220
> [ 41.238357] ? 0xffffffffc0f09000
> [ 41.238364] driver_register+0x60/0x100
> [ 41.238373] ? 0xffffffffc0f09000
> [ 41.238379] __pci_register_driver+0x54/0x60
> [ 41.238389] amdgpu_init+0x68/0x1000 [amdgpu]
> [ 41.238836] do_one_initcall+0x48/0x1e0
> [ 41.238850] ? kmem_cache_alloc_trace+0x31a/0x470
> [ 41.238862] do_init_module+0x5f/0x224
> [ 41.238876] load_module+0x266b/0x2ec0
> [ 41.238887] ? security_kernel_post_read_file+0x5c/0x70
> [ 41.238905] __do_sys_finit_module+0xc1/0x120
> [ 41.238913] ? __do_sys_finit_module+0xc1/0x120
> [ 41.238924] __x64_sys_finit_module+0x1a/0x20
> [ 41.238932] do_syscall_64+0x37/0x80
> [ 41.238942] entry_SYSCALL_64_after_hwframe+0x44/0xa9
>
> Signed-off-by: Guchun Chen <guchun.chen at amd.com>
> ---
> drivers/gpu/drm/amd/display/dc/calcs/dce_calcs.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/display/dc/calcs/dce_calcs.c b/drivers/gpu/drm/amd/display/dc/calcs/dce_calcs.c
> index 556ecfabc8d2..1244fcb0f446 100644
> --- a/drivers/gpu/drm/amd/display/dc/calcs/dce_calcs.c
> +++ b/drivers/gpu/drm/amd/display/dc/calcs/dce_calcs.c
> @@ -2051,11 +2051,11 @@ void bw_calcs_init(struct bw_calcs_dceip *bw_dceip,
>
> enum bw_calcs_version version = bw_calcs_version_from_asic_id(asic_id);
>
> - dceip = kzalloc(sizeof(dceip), GFP_KERNEL);
> + dceip = kzalloc(sizeof(*dceip), GFP_KERNEL);
> if (!dceip)
> return;
>
> - vbios = kzalloc(sizeof(vbios), GFP_KERNEL);
> + vbios = kzalloc(sizeof(*vbios), GFP_KERNEL);
> if (!vbios) {
> kfree(dceip);
> return;
Oh yes, of course.
Looks like it was missed in review too.
Sorry about the school boy error!
Reviewed-by: Lee Jones <lee.jones at linaro.org>
--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog
More information about the amd-gfx
mailing list