[PATCH 2/5] fbcon: Fix up user-provided virtual screen size
Helge Deller
deller at gmx.de
Thu Jun 30 19:30:53 UTC 2022
On 6/30/22 21:00, Geert Uytterhoeven wrote:
> Hi Helge,
>
> On Wed, Jun 29, 2022 at 10:00 PM Helge Deller <deller at gmx.de> wrote:
>> The virtual screen size can't be smaller than the physical screen size.
>> Based on the general rule that we round up user-provided input if
>> neccessary, adjust the virtual screen size as well if needed.
>>
>> Signed-off-by: Helge Deller <deller at gmx.de>
>> Cc: stable at vger.kernel.org # v5.4+
>
> Thanks for your patch!
>
>> --- a/drivers/video/fbdev/core/fbmem.c
>> +++ b/drivers/video/fbdev/core/fbmem.c
>> @@ -1106,6 +1106,11 @@ static long do_fb_ioctl(struct fb_info *info, unsigned int cmd,
>> return -EFAULT;
>> console_lock();
>> lock_fb_info(info);
>> + /* adjust virtual screen size if user missed it */
>> + if (var.xres_virtual < var.xres)
>> + var.xres_virtual = var.xres;
>> + if (var.yres_virtual < var.yres)
>> + var.yres_virtual = var.yres;
>> ret = fb_set_var(info, &var);
>> if (!ret)
>> fbcon_update_vcs(info, var.activate & FB_ACTIVATE_ALL);
>
> Given "[PATCH 4/5] fbmem: Prevent invalid virtual screen sizes in
> fb_set_var", I don't think we need this patch.
We do.
> Moreover, this
> patch will prevent triggering the WARN_ON()s in [PATCH 4/5]
Right.
> in the most common buggy case of drivers plainly ignoring var.[xy]res_virtual.
In summary:
This patch #2 is fixing up user-space invalid input and is not
allowed to trigger any WARN_ON().
We could drop patch #4, but then we wouldn't catch bad drivers.
Helge
More information about the dri-devel
mailing list