aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorxinhui pan <xinhui.pan@amd.com>2021-04-07 19:29:39 +0800
committerAlex Deucher <alexander.deucher@amd.com>2021-04-08 00:36:40 -0400
commit1b0b6e939f112949089e32ec89fd27796677263a (patch)
tree5d5f2d50f79cfdb5a026d5d8ba41f7aba934f092
parentdf7232c4c676be29f1cf45058ec156c1183539ff (diff)
downloadmisc-1b0b6e939f112949089e32ec89fd27796677263a.tar.gz
drm/amdgpu: Fix size overflow
ttm->num_pages is uint32. Hit overflow when << PAGE_SHIFT directly Fixes: 230c079fdcf4 ("drm/ttm: make num_pages uint32_t") Signed-off-by: xinhui pan <xinhui.pan@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Cc: stable@vger.kernel.org
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
index 9fd2157b133ac..5efa331e3ee82 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
@@ -906,7 +906,7 @@ static int amdgpu_ttm_tt_pin_userptr(struct ttm_bo_device *bdev,
/* Allocate an SG array and squash pages into it */
r = sg_alloc_table_from_pages(ttm->sg, ttm->pages, ttm->num_pages, 0,
- ttm->num_pages << PAGE_SHIFT,
+ (u64)ttm->num_pages << PAGE_SHIFT,
GFP_KERNEL);
if (r)
goto release_sg;