| Summary: | qemuarm/nodistro/ linux-yocto 6.4 fails parselogs | ||
|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Ross Burton <ross.burton> |
| Component: | kernel | Assignee: | Ross Burton <ross.burton> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | High | CC: | jdmason, jon.mason, randy.macleod, tom.zanussi |
| Version: | 4.3 | ||
| Target Milestone: | 4.3 M3 | ||
| Hardware: | x86 | ||
| OS: | Multiple | ||
| Whiteboard: | |||
| OS type for building Yocto: | --- | Type of Regression: | --- |
| Verified: | Documentation change: | No (bug/feature does not impact docs) | |
|
Description
Ross Burton
2023-07-14 13:07:54 UTC
Jon bisected the kernel change down to: commit ee4cce0a8f03a3332ccf48ef8b420a65d02d1fcf (refs/bisect/bad) Author: Daniel Vetter <daniel.vetter@ffwll.ch> Date: Tue Apr 4 21:40:38 2023 +0200 drm/fb-helper: fix input validation gaps in check_var Apparently drivers need to check all this stuff themselves, which for most things makes sense I guess. And for everything else we luck out, because modern distros stopped supporting any other fbdev drivers than drm ones and I really don't want to argue anymore about who needs to check stuff. Therefore fixing all this just for drm fbdev emulation is good enough. Note that var->active is not set or validated. This is just control flow for fbmem.c and needs to be validated in there as needed. Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Cc: Maxime Ripard <mripard@kernel.org> Cc: Thomas Zimmermann <tzimmermann@suse.de> Link: https://patchwork.freedesktop.org/patch/msgid/20230404194038.472803-3-daniel.vetter@ffwll.ch It appears that this patch is zero'ing variables that were not touched previous, which is causing the issue. Specifically in __fill_var,
var->left_margin = var->right_margin = 0;
var->upper_margin = var->lower_margin = 0;
var->hsync_len = var->vsync_len = 0;
if those lines are removed, then it is happy again. The investigation as to why this was changed continues
Fixed in oe-core 366d7876a70ab8833ccc0cb6607aac7e8a0311b8. |