[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHk-=wirxHy+KU6jmtO2dzmGQ1BwaOdd5Mjtrc40fGvZVULQQg@mail.gmail.com>
Date: Wed, 30 Jul 2025 20:05:16 -0700
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Dave Airlie <airlied@...il.com>
Cc: Simona Vetter <simona@...ll.ch>, dri-devel <dri-devel@...ts.freedesktop.org>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: [git pull] drm for 6.17-rc1
,
On Tue, 29 Jul 2025 at 14:06, Dave Airlie <airlied@...il.com> wrote:
>
> I've done a pass at merging mostly taking from drm-tip:
> https://github.com/airlied/linux/tree/drm-next-6.17-rc1-merged
Hmm. My resolution is pretty different, but part of it is that your
test-merge has a different top-of-tree than the tree you actually sent
me. I think you added commits
b213eb34f857 ("drm/tidss: oldi: convert to devm_drm_bridge_alloc() API")
66cdf05f8548 ("drm/tidss: encoder: convert to devm_drm_bridge_alloc()")
to the drm tree after you did your test merge.
That said, ignoring those differences, the other ones I'm pretty sure
your merge is wrong. For example, you left a duplicate
err = xe_gt_pagefault_init(gt);
if (err)
return err;
in xe_gt_init().
Also, you didn't undo the dma_buf addition to 'struct
virtio_gpu_object', that was added by commit 44b6535d8ace
("drm/virtio: Fix NULL pointer deref in virtgpu_dma_buf_free_obj()"),
but that commit was a fix for the problems that were reverted by
0ecfb8ddb953 ("Revert "drm/virtio: Use dma_buf from GEM object
instance"").
In etnaviv_sched.c, you seem to have missed the "Rename
DRM_GPU_SCHED_STAT_NOMINAL to DRM_GPU_SCHED_STAT_RESET" in commit
0a5dc1b67ef5.
And you have missing MEDIA_VERSION / GRAPHICS_VERSION entries in
xe_wa_oob.rules from commits c96e0df4e9f5f and b1c37a0030b27.
ANYWAY.
My point isn't so much that I think your merge is wrong - it's very
possible that I have made other mistakes to make up for yours. But my
point really is that these drm merges are rather messy and
error-prone.
And yes, I'm pretty good at sorting merges out, and this was by no
means the messiest merge I've ever seen.
But I do think that the drm people are doing actively wrong things
with the random cherry-picks back and forth: they cause these
conflicts, and I *really* think you should look at maybe using stable
fixes branches instead.
Would that require more care and cleaner trees? Yes. And that's kind
of the point. You are being messy, and it's affecting the quality of
the end result.
And maybe I did get the merge perfectly right. And maybe I didn't.
But the fact that you have *so* many conflicts, and that I'm pretty
damn sure that your example merge was not correct, makes me really go
"your development model is messy and leads to problems".
Again: I'm not going to guarantee that I got it right. I *think* I did
- I'm not feeling particularly unhappy with my merge end result. The
merge was annoying but largely straightforward. And it builds ok for
me ("ship it, it's perfect!"), although I do see an objtool warning:
drivers/gpu/drm/msm/msm.o: warning: objtool:
submit_lock_objects+0x44d: sibling call from callable instruction with
modified stack frame
that makes me go "Hmm".
But that one looks like gcc doing some very strange things with
coverage tracing, so I am currently inclined to blame it on odd
compiler output and objtool rather than the drm tree itself.
But I really wish you had a better model for "backport fixes" than the
mess you have now.
Because it clearly is causing potential problem spots.
Linus
Powered by blists - more mailing lists