drm/mediatek: mtk_drm_crtc: Use kmalloc in mtk_drm_crtc_duplicate_state
authorAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Tue, 18 Jan 2022 13:37:59 +0000 (14:37 +0100)
committerChun-Kuang Hu <chunkuang.hu@kernel.org>
Tue, 5 Apr 2022 22:27:23 +0000 (06:27 +0800)
Optimize mtk_drm_crtc_duplicate_state() by switching from kzalloc() to
kmalloc(): the only variable of this struct that gets checked in other
functions is `pending_config`, but if that's set to false, then all of
the remaining variables will only ever be set, but not read - so, also
set `pending_config` to false.
This saves us some small overhead.

Link: https://patchwork.kernel.org/project/linux-mediatek/patch/20220118133759.112458-2-angelogioacchino.delregno@collabora.com/
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
drivers/gpu/drm/mediatek/mtk_drm_crtc.c

index ede435d2c1efa2332408207b5a09d14b49869e5a..a6adc4ea48e1b02f74f67c88fc807b1322c9d7f2 100644 (file)
@@ -184,7 +184,7 @@ static struct drm_crtc_state *mtk_drm_crtc_duplicate_state(struct drm_crtc *crtc
 {
        struct mtk_crtc_state *state;
 
-       state = kzalloc(sizeof(*state), GFP_KERNEL);
+       state = kmalloc(sizeof(*state), GFP_KERNEL);
        if (!state)
                return NULL;
 
@@ -192,6 +192,7 @@ static struct drm_crtc_state *mtk_drm_crtc_duplicate_state(struct drm_crtc *crtc
 
        WARN_ON(state->base.crtc != crtc);
        state->base.crtc = crtc;
+       state->pending_config = false;
 
        return &state->base;
 }