drm_format_info_block_width/height() may return 0 and cause division by 0 down the line. Warn early if any of these values are 0.
Reviewed-by: Andi Shyti <[email protected]> Reviewed-by: Krzysztof Niemiec <[email protected]> Signed-off-by: Krzysztof Karas <[email protected]> --- v6: * rebased, no functional changes; v5: * split first two patches (Jani); v4: * use WARN_ON_ONCE() instead of returning early (Andi); drivers/gpu/drm/drm_fb_dma_helper.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/drm_fb_dma_helper.c b/drivers/gpu/drm/drm_fb_dma_helper.c index fd71969d2fb1..2b2513188001 100644 --- a/drivers/gpu/drm/drm_fb_dma_helper.c +++ b/drivers/gpu/drm/drm_fb_dma_helper.c @@ -85,6 +85,9 @@ dma_addr_t drm_fb_dma_get_gem_addr(struct drm_framebuffer *fb, u32 block_start_y; u32 num_hblocks; + if (WARN_ON_ONCE(block_w == 0 || block_h == 0)) + return 0; + obj = drm_fb_dma_get_gem_obj(fb, plane); if (!obj) return 0; -- 2.34.1
