Re: i915 4.5 bugfix backport and release management issue?

From: Daniel Vetter
Date: Tue Mar 29 2016 - 03:43:28 EST


On Tue, Mar 29, 2016 at 4:39 AM, Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote:
> AFAICT something got rather screwed up in i915 land for 4.5.
>
> $ git log --oneline --grep='Pretend cursor is always on' v4.5
> drivers/gpu/drm/i915/
> e2e407dc093f drm/i915: Pretend cursor is always on for ILK-style WM
> calculations (v2)
>
> $ git log --oneline --grep='Pretend cursor is always on' v4.6-rc1
> drivers/gpu/drm/i915/
> e2e407dc093f drm/i915: Pretend cursor is always on for ILK-style WM
> calculations (v2)
> b2435692dbb7 drm/i915: Pretend cursor is always on for ILK-style WM
> calculations (v2)
>
> The two patches there are almost, but not quite, the same thing, which
> makes me wonder how they both ended up in Linus' tree without an
> obvious merge conflict.
>
> I have no idea what caused this. However, I think (on very little
> inspection, but it's consistent with problems I have with 4.5 on my
> laptop) that the first one is an *incorrect* fix for a regression in
> 4.5 and the second is a correct fix for the same regression. 4.6-rc1
> seems okay.
>
> I reported the regression and everyone involved has known about it for
> weeks. Nonetheless, 4.5 final is busted.

Quoting from e2e407dc093f

"(cherry picked from commit b2435692dbb709d4c8ff3b2f2815c9b8423b72bb)"

i.e. this is intentionally twice in the history. We started to soak
bugfixes in -next and then cherry pick them because we had too much
fun with things blowing up, and also too much fun with really messy
conflicts. It's not a botched patch in 4.5 or anything else nefarious
at all.

Which just means that there's another bugfix in 4.6-rc1 that needs to
be backported to 4.5 but hasn't arrived in there yet. Two possible
cases:
- Greg is too slow with cc: stable patches - especially around
releases we occasionally put the patch into the wrong branch at first,
or it simply misses the last pull. 4.6 closes for drm drivers already
at 4.5-rc5, so there's a sizeable overlap where placing patches
correctly requires some juggling.

- We've genuinely failed to cherry-pick a bugfix over. It happens,
despite our best efforts (which of course includes running stuff on
Linus' tree). Please do a reverse bisect so we know which precise
commit fell through the cracks.

Thanks, Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch