On Tue, Nov 3, 2020 at 5:15 PM Lyude Paul <lyude@xxxxxxxxxx> wrote: > > Noticed this when trying to compile with -Wall on a kernel fork. We potentially > don't set width here, which causes the compiler to complain about width > potentially being uninitialized in drm_cvt_modes(). So, let's fix that. > > Changes since v1: > * Don't emit an error as this code isn't reachable, just mark it as such > > Signed-off-by: Lyude Paul <lyude@xxxxxxxxxx> > > Cc: <stable@xxxxxxxxxxxxxxx> # v5.9+ > Fixes: 3f649ab728cd ("treewide: Remove uninitialized_var() usage") > Signed-off-by: Lyude Paul <lyude@xxxxxxxxxx> > --- > drivers/gpu/drm/drm_edid.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c > index 631125b46e04..0643b98c6383 100644 > --- a/drivers/gpu/drm/drm_edid.c > +++ b/drivers/gpu/drm/drm_edid.c > @@ -3094,6 +3094,7 @@ static int drm_cvt_modes(struct drm_connector *connector, > > for (i = 0; i < 4; i++) { > int width, height; > + u8 cvt_aspect_ratio; > > cvt = &(timing->data.other_data.data.cvt[i]); > > @@ -3101,7 +3102,8 @@ static int drm_cvt_modes(struct drm_connector *connector, > continue; > > height = (cvt->code[0] + ((cvt->code[1] & 0xf0) << 4) + 1) * 2; > - switch (cvt->code[1] & 0x0c) { > + cvt_aspect_ratio = cvt->code[1] & 0x0c; The temp var doesn't do anything now right? Previously you were using it in the print, but now you can drop these two hunks, I think? -ilia > + switch (cvt_aspect_ratio) { > case 0x00: > width = height * 4 / 3; > break; > @@ -3114,6 +3116,8 @@ static int drm_cvt_modes(struct drm_connector *connector, > case 0x0c: > width = height * 15 / 9; > break; > + default: > + unreachable(); > } > > for (j = 1; j < 5; j++) { > -- > 2.28.0 >