[Intel-gfx] [Linux v4.0-rc5] Warnings in drm_framebuffer_reference() and drm_atomic_check_only()

Takashi Iwai tiwai at suse.de
Wed Mar 25 07:34:05 PDT 2015


At Wed, 25 Mar 2015 14:26:50 +0100,
Daniel Vetter wrote:
> 
> On Tue, Mar 24, 2015 at 07:09:03PM +0100, Sedat Dilek wrote:
> > On Mon, Mar 23, 2015 at 9:25 AM, Daniel Vetter <daniel at ffwll.ch> wrote:
> > > On Mon, Mar 23, 2015 at 07:25:27AM +0100, Sedat Dilek wrote:
> > >> Hi,
> > >>
> > >> I did my weekly update of the Linux RC (here: v4.0-rc5) and fell over
> > >> some warning in the drm area.
> > >>
> > >> Please have a look...
> > >
> > 
> > Hi Daniel,
> > 
> > > Just to confirm: Both are new in -rc5 and haven't been around in -rc4?
> > >
> > 
> > Yeah, rc4 was OK but with rc5 I have seen these warnings.
> > 
> > > Also can you pls give -nightly a spin and see what happens there?
> > >
> > 
> > drm-intel-nightly (2015y-03m-24d-09h-19m-43s UTC) pulled on top of rc5
> > does not show any warnings in the drm | i915 area.
> 
> drm-fixes has 2 cherry-picks from -next to address the worst offenders,
> there's one more which is waiting for confirmation:
> 
> commit fb9981aa675eb7b398849915364916fd98833cfa
> Author: Damien Lespiau <damien.lespiau at intel.com>
> Date:   Thu Feb 5 19:24:25 2015 +0000
> 
>     drm/i915: Fix atomic state when reusing the firmware fb
> 
> Please apply that commit from -next on top of drm-fixes and retest.

The problem is introduced by the commit 
319c1d420a0b62d9dbb88104afebaabc968cdbfa
    drm/i915: Ensure plane->state->fb stays in sync with plane->fb

Obviously it accesses the uninitialized kref in
get_initial_plane_config().

The commit in next
f55548b5af87ebfc586ca75748947f1c1b1a4a52
    drm/i915: Don't try to reference the fb in get_initial_plane_config()

fixes the bug itself, but it leads to another similar warnings.  For
avoiding this, yet another cherry-picks (including the commit you
mentioned above):

fb9981aa675eb7b398849915364916fd98833cfa
    drm/i915: Fix atomic state when reusing the firmware fb
2d14030b1a9d0e89cfdca6f16851e2eac8cb4de0
    drm/i915: Store the initial framebuffer in initial_plane_config

then warnings are finally gone.

But, the second one can't be applied cleanly, so I had to adjust many
codes manually by replacing primary fb references.


Takashi


More information about the Intel-gfx mailing list