Il 06/03/24 21:37, Justin Green ha scritto:
Add a check to mtk_drm_gem_init if we attempt to allocate a GEM object
of 0 bytes. Currently, no such check exists and the kernel will panic if
a userspace application attempts to allocate a 0x0 GBM buffer.

Tested by attempting to allocate a 0x0 GBM buffer on an MT8188 and
verifying that we now return EINVAL.

Signed-off-by: Justin green <greenjus...@chromium.org>

You need a Fixes tag for this one. Please add the right one and resend.

After adding the correct Fixes tag,

Reviewed-by: AngeloGioacchino Del Regno 
<angelogioacchino.delre...@collabora.com>

Cheers,
Angelo

---
  drivers/gpu/drm/mediatek/mtk_drm_gem.c | 3 +++
  1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_drm_gem.c 
b/drivers/gpu/drm/mediatek/mtk_drm_gem.c
index 4f2e3feabc0f..ee49367b6138 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_gem.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_gem.c
@@ -38,6 +38,9 @@ static struct mtk_drm_gem_obj *mtk_drm_gem_init(struct 
drm_device *dev,
size = round_up(size, PAGE_SIZE); + if (size == 0)
+               return ERR_PTR(-EINVAL);
+
        mtk_gem_obj = kzalloc(sizeof(*mtk_gem_obj), GFP_KERNEL);
        if (!mtk_gem_obj)
                return ERR_PTR(-ENOMEM);


Reply via email to