aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Deucher <alexander.deucher@amd.com>2019-01-10 06:16:57 -0500
committerAlex Deucher <alexander.deucher@amd.com>2019-01-15 11:14:21 -0500
commit25ec429e86bb790e40387a550f0501d0ac55a47c (patch)
tree98a9db512fe118d6502550ae15580b6057ee4ed8
parentae1cf20df7a9c60ff5ef41c3315c33c1a5fafd77 (diff)
Revert "drm/amdgpu: validate user GEM object size"
It was at the same time too strict (for linear tiling modes, where no height alignment is required) and too lenient (for 2D tiling modes, where height may need to be aligned to values > 8). Acked-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_display.c8
1 files changed, 0 insertions, 8 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
index dafc645b2e4e..cb72d9675ab1 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
@@ -531,7 +531,6 @@ amdgpu_display_user_framebuffer_create(struct drm_device *dev,
531 struct drm_gem_object *obj; 531 struct drm_gem_object *obj;
532 struct amdgpu_framebuffer *amdgpu_fb; 532 struct amdgpu_framebuffer *amdgpu_fb;
533 int ret; 533 int ret;
534 int height;
535 struct amdgpu_device *adev = dev->dev_private; 534 struct amdgpu_device *adev = dev->dev_private;
536 int cpp = drm_format_plane_cpp(mode_cmd->pixel_format, 0); 535 int cpp = drm_format_plane_cpp(mode_cmd->pixel_format, 0);
537 int pitch = mode_cmd->pitches[0] / cpp; 536 int pitch = mode_cmd->pitches[0] / cpp;
@@ -556,13 +555,6 @@ amdgpu_display_user_framebuffer_create(struct drm_device *dev,
556 return ERR_PTR(-EINVAL); 555 return ERR_PTR(-EINVAL);
557 } 556 }
558 557
559 height = ALIGN(mode_cmd->height, 8);
560 if (obj->size < pitch * height) {
561 DRM_DEBUG_KMS("Invalid GEM size: expecting >= %d but got %zu\n",
562 pitch * height, obj->size);
563 return ERR_PTR(-EINVAL);
564 }
565
566 amdgpu_fb = kzalloc(sizeof(*amdgpu_fb), GFP_KERNEL); 558 amdgpu_fb = kzalloc(sizeof(*amdgpu_fb), GFP_KERNEL);
567 if (amdgpu_fb == NULL) { 559 if (amdgpu_fb == NULL) {
568 drm_gem_object_put_unlocked(obj); 560 drm_gem_object_put_unlocked(obj);