Hi folks,

We'd like to replace most of the DRM trees in linux-next with a single
branch:

  https://gitlab.freedesktop.org/drm/tip.git#drm-for-linux-next

It replaces these entries:

  drm/drm-next, drm/drm-fixes
  drm-misc/for-linux-next, drm-misc/for-linux-next-fixes
  drm-intel/for-linux-next, drm-intel/for-linux-next-fixes
  drm-xe/drm-xe-next
  drm-rust/for-linux-next, drm-rust/for-linux-next-fixes
  amdgpu (agd5f/linux.git#drm-next)

drm-exynos, drm-msm, drm-msm-fixes, drm-msm-lumag, drm-nova and etnaviv
are not part of it and stay as they are.

The main reason is to reduce the conflict pain that Mark constantly faces.
All of them should be handled already when we are rebuilding drm-tip.

During this work, I realized that drm-xe is a big culprit for leaking
future work without a blackout date from -rc6 to <next>-rc1.
So, another quick solution would be to get a drm-xe for-linux-next like
the other domains are doing. However, I still believe that this unified
one will make Mark's life much easier anyway.

The unified branch is rebuilt by dim together with drm-tip. It has all the DRM
-fixes, drm-next, -next-fixes and driver -next branches merged, with
the conflicts between them already resolved on our side. From -rc6
until -rc1 (per Linus' tree) the driver -next branches are left out, so
nothing for the following merge window lands early.

It contains the DRM fixes too, so it would go where "drm" is today.

During the past weeks I have confirmed that the drm blackout period
works well on this new branch.

The dim changes:

  d875049d2b29 dim: build a unified drm-for-linux-next branch
  3009867cd318 dim: keep -next branches out of drm-for-linux-next during the 
freeze
  https://gitlab.freedesktop.org/drm/maintainer-tools/-/commits/master

AMD:
Alex, Christian: linux-next takes amdgpu from
agd5f/linux.git#drm-next today, which differs from drm-amdgpu-next in
drm-tip. Is drm-amdgpu-next fine for linux-next?

All other maintainers, please ack if you are okay with this approach.

Mark, you're in Cc for visibility only. Once we have all the acks, I'll
send you the formal request. After linux-next switches, we stop
updating the old for-linux-next* branches (patch below).

Thanks,
Rodrigo.

---
dim: stop updating the per-repo for-linux-next branches

linux-next now pulls the unified drm-for-linux-next branch instead.

Signed-off-by: Rodrigo Vivi <[email protected]>
---
 dim | 53 -----------------------------------------------------
 1 file changed, 53 deletions(-)

diff --git a/dim b/dim
index e3f616b..b3ed8f7 100755
--- a/dim
+++ b/dim
@@ -658,52 +658,6 @@ function dim_range_diff
        fi
 }
 
-# update for-linux-next* branches
-function update_linux_next # branch next next-fixes fixes [for-linux-next] 
[for-linux-next-fixes]
-{
-       local branch linux_next linux_next_fixes linux_fixes for_linux_next 
for_linux_next_fixes repo remote
-
-       cd $DIM_PREFIX/drm-tip
-       branch=$1
-       linux_next=$2
-       linux_next_fixes=$3
-       linux_fixes=$4
-       for_linux_next=${5:-for-linux-next}
-       for_linux_next_fixes=${6:-for-linux-next-fixes}
-
-       repo=$(branch_to_repo $branch)
-
-       if [[ $repo != $(branch_to_repo $linux_next) ]] ; then
-               return
-       fi
-
-       remote=$(repo_to_remote $repo)
-
-       git_fetch_helper $remote
-
-       if [ -n "$for_linux_next_fixes" ] ; then
-               echo -n "Pushing $linux_fixes to $for_linux_next_fixes... "
-               git_push $remote +$remote/$linux_fixes:$for_linux_next_fixes
-               echo "$DONE_OR_SKIP"
-       fi
-
-       if git merge-base --is-ancestor $remote/$linux_next_fixes 
$remote/$linux_fixes ; then
-               # -fixes has caught up to dinf, i.e. we're out of the merge
-               # window. Push the next queue.
-               echo -n "Out of merge window. Pushing $linux_next to 
$for_linux_next... "
-               git_push $remote +$remote/$linux_next:$for_linux_next
-               echo "$DONE_OR_SKIP"
-       else
-               # dinf is ahead of -fixes, i.e. drm-next has already closed for
-               # the next merge window and we've started to gather new fixes
-               # for the current -next cycle. Push dinf
-
-               echo -n "Pushing $linux_next_fixes to $for_linux_next... "
-               git_push $remote +$remote/$linux_next_fixes:$for_linux_next
-               echo "$DONE_OR_SKIP"
-       fi
-}
-
 function check_conflicts # tree
 {
        if git diff | grep -q '\(<<<<<<<\|=======\|>>>>>>>\||||||||\)' ; then
@@ -1192,13 +1146,6 @@ function dim_push_branch
 
        git_push $remote $branch "$@"
 
-       update_linux_next $branch drm-intel-next drm-intel-next-fixes 
drm-intel-fixes
-       update_linux_next $branch drm-intel-gt-next drm-intel-next-fixes 
drm-intel-fixes \
-               for-linux-next-gt "" # no for-linux-next-gt-fixes for now
-       update_linux_next $branch drm-misc-next drm-misc-next-fixes 
drm-misc-fixes
-       update_linux_next $branch drm-rust-next drm-rust-next-fixes 
drm-rust-fixes
-       update_linux_next $branch drm-amd-next drm-amd-next-fixes drm-amd-fixes
-
        dim_rebuild_tip
 }
 

Reply via email to