[Intel-gfx] drivers/gpu/drm/i915/display/intel_display.c:3934 skl_plane_stride() error: testing array offset 'color_plane' after use.

Ville Syrjälä ville.syrjala at linux.intel.com
Mon Sep 16 12:43:40 UTC 2019


On Mon, Sep 16, 2019 at 10:59:13AM +0300, Dan Carpenter wrote:
> On Mon, Sep 16, 2019 at 10:31:35AM +0300, Jani Nikula wrote:
> > On Sat, 14 Sep 2019, Dan Carpenter <dan.carpenter at oracle.com> wrote:
> > > tree:   https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux.git master
> > > head:   a7f89616b7376495424f682b6086e0c391a89a1d
> > > commit: df0566a641f959108c152be748a0a58794280e0e drm/i915: move modesetting core code under display/
> > > date:   3 months ago
> > >
> > > If you fix the issue, kindly add following tag
> > > Reported-by: kbuild test robot <lkp at intel.com>
> > > Reported-by: Dan Carpenter <dan.carpenter at oracle.com>
> > >
> > > New smatch warnings:
> > > drivers/gpu/drm/i915/display/intel_display.c:3934 skl_plane_stride() error: testing array offset 'color_plane' after use.

The code looks fine to me. int color_plane is 0 or 1 so we know
the color_plane[] array is has enough elements. But if
fb->num_planes==1 we don't actually want to look at color_plane[1].

> > > drivers/gpu/drm/i915/display/intel_display.c:16328 intel_sanitize_encoder() error: we previously assumed 'crtc' could be null (see line 16318)

If crtc_state!=NULL then crtc!=NULL. Looks safe to me.

> > 
> > Odd, what changed to provoke the warnings now? Or is the smatch test
> > new?
> > 
> 
> It looks like the cross function DB is out of data slightly.  Maybe
> because the file moved?  On my system Smatch knows that color_plane is
> 0-1 and plane_state->color_plane[] is a two element array so it doesn't
> print the warning.
> 
> This is just a sanity check which is never triggered.  Should the sanity
> check be move?  What was originally intended?  It's hard to say.
> 
> regards,
> dan carpenter

-- 
Ville Syrjälä
Intel


More information about the Intel-gfx mailing list