commit e7e11f995642 ("drm/vmwgfx: fix integer overflow in 
vmw_surface_define_ioctl()")
ensures that each req->mip_levels[i] <= DRM_VMW_MAX_MIP_LEVELS, It would be 
easy to
conclude that the sum of req->mip_levels[i] (i = 0, ..., 
DRM_VMW_MAX_SURFACE_FACES - 1)
is less than or equal to (DRM_VMW_MAX_SURFACE_FACES * DRM_VMW_MAX_MIP_LEVELS).

Signed-off-by: Zhen Lei <thunder.leiz...@huawei.com>
---
 drivers/gpu/drm/vmwgfx/vmwgfx_surface.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_surface.c 
b/drivers/gpu/drm/vmwgfx/vmwgfx_surface.c
index 05fa092..4520b1f 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_surface.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_surface.c
@@ -719,8 +719,7 @@ int vmw_surface_define_ioctl(struct drm_device *dev, void 
*data,
                num_sizes += req->mip_levels[i];
        }

-       if (num_sizes > DRM_VMW_MAX_SURFACE_FACES * DRM_VMW_MAX_MIP_LEVELS ||
-           num_sizes == 0)
+       if (num_sizes == 0)
                return -EINVAL;

        size = vmw_user_surface_size + 128 +
--
2.5.0


_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to