[PATCH v6 16/16] drm/msm: Fixup invalid overflow check

From: Rob Clark

Date: Fri Jul 17 2026 - 16:49:58 EST


On overflow struct_size() would return SIZE_MAX. But kzalloc() (and
friends) check this already, so we can just remove the check.

On the other hand, we should be using the overflow helpers to calculate
the cmd array size.

Reported-by: Sashiko <sashiko-bot@xxxxxxxxxx>
Signed-off-by: Rob Clark <robin.clark@xxxxxxxxxxxxxxxx>
---
drivers/gpu/drm/msm/msm_gem_submit.c | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/msm/msm_gem_submit.c b/drivers/gpu/drm/msm/msm_gem_submit.c
index 6b0bee6c39bc..5862db05297a 100644
--- a/drivers/gpu/drm/msm/msm_gem_submit.c
+++ b/drivers/gpu/drm/msm/msm_gem_submit.c
@@ -36,14 +36,11 @@ static struct msm_gem_submit *submit_create(struct drm_device *dev,
{
static atomic_t ident = ATOMIC_INIT(0);
struct msm_gem_submit *submit;
- uint64_t sz;
+ size_t sz;
int ret;

- sz = struct_size(submit, bos, nr_bos) +
- ((u64)nr_cmds * sizeof(submit->cmd[0]));
-
- if (sz > SIZE_MAX)
- return ERR_PTR(-ENOMEM);
+ sz = size_add(struct_size(submit, bos, nr_bos),
+ array_size(sizeof(submit->cmd[0]), nr_cmds));

submit = kzalloc(sz, GFP_KERNEL | __GFP_NOWARN);
if (!submit)
--
2.55.0