]> www.infradead.org Git - users/dwmw2/linux.git/commit
drm/amdgpu: Fix the memory allocation issue in amdgpu_discovery_get_nps_info()
authorLi Huafei <lihuafei1@huawei.com>
Tue, 29 Oct 2024 20:27:58 +0000 (04:27 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 4 Nov 2024 16:30:28 +0000 (11:30 -0500)
commita1144da794adedb9447437c57d69add56494309d
tree903b065ddb376448df5b8dc9ad518813c54d7510
parent35984fd4a093ccb9e0bb82db4cac5c1bf2df7d93
drm/amdgpu: Fix the memory allocation issue in amdgpu_discovery_get_nps_info()

Fix two issues with memory allocation in amdgpu_discovery_get_nps_info()
for mem_ranges:

 - Add a check for allocation failure to avoid dereferencing a null
   pointer.

 - As suggested by Christophe, use kvcalloc() for memory allocation,
   which checks for multiplication overflow.

Additionally, assign the output parameters nps_type and range_cnt after
the kvcalloc() call to prevent modifying the output parameters in case
of an error return.

Fixes: b194d21b9bcc ("drm/amdgpu: Use NPS ranges from discovery table")
Suggested-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Reviewed-by: Lijo Lazar <lijo.lazar@amd.com>
Signed-off-by: Li Huafei <lihuafei1@huawei.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c