]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
staging: sm750fb: fix division by zero in ps_to_hz()
authorJunrui Luo <moonafterrain@outlook.com>
Mon, 23 Mar 2026 07:31:56 +0000 (15:31 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 31 Mar 2026 08:33:21 +0000 (10:33 +0200)
ps_to_hz() is called from hw_sm750_crtc_set_mode() without validating
that pixclock is non-zero. A zero pixclock passed via FBIOPUT_VSCREENINFO
causes a division by zero.

Fix by rejecting zero pixclock in lynxfb_ops_check_var(), consistent
with other framebuffer drivers.

Fixes: 81dee67e215b ("staging: sm750fb: add sm750 to staging")
Reported-by: Yuhao Jiang <danisjiang@gmail.com>
Cc: stable@vger.kernel.org
Signed-off-by: Junrui Luo <moonafterrain@outlook.com>
Link: https://patch.msgid.link/SYBPR01MB7881AFBFCE28CCF528B35D0CAF4BA@SYBPR01MB7881.ausprd01.prod.outlook.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/sm750fb/sm750.c

index 9a42a08c8ed59167491508e838d1816bea65a6d4..9f3e3d37e82a11cda1607b94c6e0eeae40d122ef 100644 (file)
@@ -481,6 +481,9 @@ static int lynxfb_ops_check_var(struct fb_var_screeninfo *var,
        struct lynxfb_crtc *crtc;
        resource_size_t request;
 
+       if (!var->pixclock)
+               return -EINVAL;
+
        ret = 0;
        par = info->par;
        crtc = &par->crtc;