public inbox for linux-fbdev@vger.kernel.org
 help / color / mirror / Atom feed
From: Helge Deller <deller@gmx.de>
To: dri-devel@lists.freedesktop.org, daniel.vetter@ffwll.ch,
	linux-fbdev@vger.kernel.org
Subject: [PATCH v3 4/4] fbmem: Prevent invalid virtual screen sizes
Date: Sun, 26 Jun 2022 00:06:30 +0200	[thread overview]
Message-ID: <20220625220630.333705-5-deller@gmx.de> (raw)
In-Reply-To: <20220625220630.333705-1-deller@gmx.de>

Prevent that drivers or the user sets the virtual screen resolution
smaller than the physical screen resolution.  This is important, because
otherwise we may get accesses outside of the graphics memory area.

Signed-off-by: Helge Deller <deller@gmx.de>
Cc: stable@vger.kernel.org # v5.4+
---
 drivers/video/fbdev/core/fbmem.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/video/fbdev/core/fbmem.c b/drivers/video/fbdev/core/fbmem.c
index 160389365a36..b6e1d0f2b974 100644
--- a/drivers/video/fbdev/core/fbmem.c
+++ b/drivers/video/fbdev/core/fbmem.c
@@ -1006,6 +1006,12 @@ fb_set_var(struct fb_info *info, struct fb_var_screeninfo *var)
 	if (var->xres < 8 || var->yres < 8)
 		return -EINVAL;

+	/* make sure virtual resolution >= physical resolution */
+	if (var->xres_virtual < var->xres)
+		return -EINVAL;
+	if (var->yres_virtual < var->yres)
+		return -EINVAL;
+
 	/* Too huge resolution causes multiplication overflow. */
 	if (check_mul_overflow(var->xres, var->yres, &unused) ||
 	    check_mul_overflow(var->xres_virtual, var->yres_virtual, &unused))
--
2.35.3


  parent reply	other threads:[~2022-06-25 22:06 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-25 22:06 [PATCH v3 0/4] fbcon: Fixes for screen resolution changes Helge Deller
2022-06-25 22:06 ` [PATCH v3 1/4] fbcon: Disallow setting font bigger than screen size Helge Deller
2022-06-25 22:06 ` [PATCH v3 2/4] fbcon: Add fbcon_modechange_possible() check Helge Deller
2022-06-25 22:06 ` [PATCH v3 3/4] fbmem: Check screen resolution change against font size Helge Deller
2022-06-25 22:33   ` Daniel Vetter
2022-06-25 22:37     ` Daniel Vetter
2022-06-25 23:12       ` Helge Deller
2022-06-25 23:56         ` Helge Deller
2022-06-26  8:49           ` Daniel Vetter
2022-06-26  9:00             ` Helge Deller
2022-06-25 22:57     ` Helge Deller
2022-06-25 22:06 ` Helge Deller [this message]
2022-06-25 22:34   ` [PATCH v3 4/4] fbmem: Prevent invalid virtual screen sizes Daniel Vetter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220625220630.333705-5-deller@gmx.de \
    --to=deller@gmx.de \
    --cc=daniel.vetter@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-fbdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox