[PATCH] dim: flag-day change from drm-intel-next-queued to drm-intel-next
Jani Nikula
jani.nikula at intel.com
Fri Nov 13 09:56:58 UTC 2020
Switching from using drm-intel-next-queued to drm-intel-next requires a
flag-day change. This is the dim change to switch to drm-intel-next. For
now, keep the sub-command names such as "conq" and "push-queued", and
change everything under the hood. Prevent pushes to
drm-intel-next-queued.
The flag-day change should be rolled with:
1) Bump minimum dim version with DIM_MIN_VERSION=1 in nightly.conf
2) Sync drm-intel-next-queued to drm-intel-next
3) Push this change to maintainer-tools
Cc: Daniel Vetter <daniel at ffwll.ch>
Cc: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
Signed-off-by: Jani Nikula <jani.nikula at intel.com>
---
committer-drm-intel.rst | 6 +++---
dim | 30 ++++++++++++++++++------------
dim.rst | 14 +++++++-------
drm-intel.rst | 10 +++++-----
drm-tip.rst | 10 +++++-----
maintainer-drm-intel.rst | 34 +++++++++++++++++-----------------
repositories.rst | 20 +++++++++-----------
7 files changed, 64 insertions(+), 60 deletions(-)
diff --git a/committer-drm-intel.rst b/committer-drm-intel.rst
index 11ad3f4cadb5..dc4932af4e89 100644
--- a/committer-drm-intel.rst
+++ b/committer-drm-intel.rst
@@ -21,7 +21,7 @@ The short list:
* Only push patches changing `drivers/gpu/drm/i915`.
-* Only push patches to `drm-intel-next-queued` branch.
+* Only push patches to `drm-intel-next` branch.
* Ensure certain details are covered, see separate list below.
@@ -235,8 +235,8 @@ If the Cc: or Fixes: was forgotten, you can still reply to the list with that,
just like any other tags, and they should be picked up by whoever pushes the
patch.
-The maintainers will cherry-pick labeled patches from drm-intel-next-queued to
-the appropriate branches.
+The maintainers will cherry-pick labeled patches from drm-intel-next to the
+appropriate branches.
'Fixes:' tag is described in
`Documentation/process/submitting-patches
diff --git a/dim b/dim
index 640844a93c65..1be1435a1a52 100755
--- a/dim
+++ b/dim
@@ -307,7 +307,7 @@ function branch_to_repo # branch
function dim_version
{
- echo "0"
+ echo "1"
}
function dim_uptodate
@@ -1011,7 +1011,7 @@ function dim_push_branch
git_push $remote $branch "$@"
- update_linux_next $branch drm-intel-next-queued drm-intel-next-fixes drm-intel-fixes
+ update_linux_next $branch drm-intel-next drm-intel-next-fixes drm-intel-fixes
update_linux_next $branch drm-misc-next drm-misc-next-fixes drm-misc-fixes
update_linux_next $branch drm-amd-next drm-amd-next-fixes drm-amd-fixes
@@ -1021,7 +1021,7 @@ function dim_push_branch
dim_alias_pq=push-queued
function dim_push_queued
{
- dim_push_branch drm-intel-next-queued "$@"
+ dim_push_branch drm-intel-next "$@"
}
dim_alias_pnf=push-next-fixes
@@ -1108,6 +1108,12 @@ function dim_apply_branch
file=$(mktemp)
dir=$(mktemp -d)
+ # Transitional
+ if [[ "$branch" = "drm-intel-next-queued" ]]; then
+ echoerr "ERROR: Please use drm-intel-next instead of drm-intel-next-queued."
+ return 1
+ fi
+
assert_branch $branch
assert_repo_clean
@@ -1304,7 +1310,7 @@ function dim_add_link
function dim_add_link_queued
{
- dim_add_link drm-intel-next-queued "$@"
+ dim_add_link drm-intel-next "$@"
}
function dim_add_link_fixes
@@ -1320,7 +1326,7 @@ function dim_add_link_next_fixes
dim_alias_aq=apply-queued
function dim_apply_queued
{
- dim_apply_branch drm-intel-next-queued "$@"
+ dim_apply_branch drm-intel-next "$@"
}
function dim_apply_fixes
@@ -1396,8 +1402,8 @@ function cherry_pick_branch
intel_remote=$(repo_to_remote drm-intel)
- # Look for commits in dinq tagged as fixes.
- for commit in $(git_list_fixes $intel_remote/$branch..$intel_remote/drm-intel-next-queued $intel_remote/$branch..$intel_remote/drm-intel-gt-next -- drivers/gpu/drm/i915); do
+ # Look for commits in din tagged as fixes.
+ for commit in $(git_list_fixes $intel_remote/$branch..$intel_remote/drm-intel-next $intel_remote/$branch..$intel_remote/drm-intel-gt-next -- drivers/gpu/drm/i915); do
echo -n "Considering $(dim_cite $commit)... "
# Look at history for already cherry-picked fixes.
@@ -1627,7 +1633,7 @@ function dim_checkout
function dim_conq
{
- dim_checkout drm-intel-next-queued "$@"
+ dim_checkout drm-intel-next "$@"
}
function dim_cof
@@ -1649,7 +1655,7 @@ function check_maintainer
branch=$1
commit=$2
- if [ "$branch" = "drm-intel-next-queued" ]; then
+ if [ "$branch" = "drm-intel-next" ]; then
if non_i915_files=$(git diff-tree --no-commit-id --name-only -r $commit | \
grep -v "^\(drivers/gpu/drm/i915/\|include/drm/i915\|include/uapi/drm/i915\|Documentation/gpu/i915\)") && [[ -n "$non_i915_files" ]]; then
echo -e "The following files are outside of i915 maintenance scope:\n"
@@ -1674,7 +1680,7 @@ function checkpatch_commit
# special branch profile maps branches to profiles
if [[ "$profile" = "branch" ]]; then
case "$(git_current_branch)" in
- drm-intel-next-queued|drm-intel-next-fixes|drm-intel-fixes)
+ drm-intel-next|drm-intel-next-fixes|drm-intel-fixes)
profile=drm-intel
;;
drm-misc-next|drm-misc-next-fixes|drm-misc-fixes)
@@ -1754,7 +1760,7 @@ function dim_extract_tags
function dim_extract_queued
{
- dim_extract_tags drm-intel-next-queued "$@"
+ dim_extract_tags drm-intel-next "$@"
}
function dim_extract_fixes
@@ -2100,7 +2106,7 @@ function dim_pull_request
function dim_pull_request_next
{
upstream=${1:-$(branch_to_remote drm-next)/drm-next}
- dim_pull_request drm-intel-next-queued $upstream
+ dim_pull_request drm-intel-next $upstream
}
function dim_pull_request_fixes
diff --git a/dim.rst b/dim.rst
index 757f7c7a4f16..60c688d6c027 100644
--- a/dim.rst
+++ b/dim.rst
@@ -139,7 +139,7 @@ conf
conq
----
**checkout** shorthands for *drm-intel-fixes*, *drm-intel-next-fixes*, and
-*drm-intel-next-queued* branches respectively.
+*drm-intel-next* branches respectively.
apply-branch branch [*git am arguments*]
----------------------------------------
@@ -154,7 +154,7 @@ apply-next-fixes [*git am arguments*]
apply-queued [*git am arguments*]
---------------------------------
**apply-branch** shorthands for *drm-intel-fixes*, *drm-intel-next-fixes*, and
-*drm-intel-next-queued* branches respectively.
+*drm-intel-next* branches respectively.
apply [*git am arguments*]
--------------------------
@@ -179,7 +179,7 @@ extract-next-fixes [*git-rangeish*]
extract-queued [*git-rangeish*]
-------------------------------
**extract-tags** shorthands for *drm-intel-fixes*, *drm-intel-next-fixes*, and
-*drm-intel-next-queued* branches respectively.
+*drm-intel-next* branches respectively.
push-branch branch [*git push arguments*]
-----------------------------------------
@@ -196,7 +196,7 @@ push-next-fixes [*git push arguments*]
push-queued [*git push arguments*]
----------------------------------
**push-branch** shorthands for *drm-intel-fixes*, *drm-intel-next-fixes*, and
-*drm-intel-next-queued* branches respectively.
+*drm-intel-next* branches respectively.
push [*git push arguments*]
---------------------------
@@ -235,7 +235,7 @@ add-link-next-fixes
add-link-queued
---------------
**add-link** shorthands for *drm-intel-fixes*, *drm-intel-next-fixes*, and
-*drm-intel-next-queued* branches respectively.
+*drm-intel-next* branches respectively.
add-missing-cc
--------------
@@ -299,7 +299,7 @@ cherry-pick-fixes
cherry-pick-next-fixes
----------------------
Look for non-upstreamed fixes (commits tagged Cc: stable at vger.kernel.org or Cc:
-drm-intel-fixes at lists.freedesktop.org) in drm-intel-next-queued, and try to
+drm-intel-fixes at lists.freedesktop.org) in drm-intel-next, and try to
cherry-pick them to drm-intel-fixes or drm-intel-next-fixes. These commands use
dim cherry-pick internally to make sure bugfixes for fixes are cherry-picked
too.
@@ -337,7 +337,7 @@ pull-request-next-fixes [*upstream*]
pull-request-next [*upstream*]
------------------------------
-**pull-request** shorthand for *drm-intel-next-queued* as the branch and
+**pull-request** shorthand for *drm-intel-next* as the branch and
*\$DRM_UPSTREAM/drm-next* as the default upstream.
apply-pull *branch*
diff --git a/drm-intel.rst b/drm-intel.rst
index 4587396452f2..53f75f2e0b8d 100644
--- a/drm-intel.rst
+++ b/drm-intel.rst
@@ -43,16 +43,16 @@ Yellow = Additional trees from/shared with other subsystems.
Features
--------
-Features are picked up and pushed to drm-intel-next-queued by committers and
+Features are picked up and pushed to drm-intel-next by committers and
maintainers. See :ref:`committer-drm-intel` for details.
Fixes
-----
-Fixes are picked up and pushed to drm-intel-next-queued by committers and
-maintainers, just like any other patches. This is to ensure fixes are pushed in
-a timely manner. Fixes that are relevant for stable, current development
-kernels, or drm-next, will be cherry-picked by maintainers to drm-intel-fixes or
+Fixes are picked up and pushed to drm-intel-next by committers and maintainers,
+just like any other patches. This is to ensure fixes are pushed in a timely
+manner. Fixes that are relevant for stable, current development kernels, or
+drm-next, will be cherry-picked by maintainers to drm-intel-fixes or
drm-intel-next-fixes.
To make this work, patches should be labeled as fixes (see XXX), and extra care
diff --git a/drm-tip.rst b/drm-tip.rst
index a1e2dfedd745..7515ab7a3962 100644
--- a/drm-tip.rst
+++ b/drm-tip.rst
@@ -33,16 +33,16 @@ sometimes fail, for example like this::
Merging origin/drm-intel-fixes... Reset. Done.
Merging drm-upstream/drm-fixes... Fast-forward. Done.
Merging origin/drm-intel-next-fixes... Done.
- Merging origin/drm-intel-next-queued... ++<<<<<<< HEAD
+ Merging origin/drm-intel-next... ++<<<<<<< HEAD
++=======
- ++>>>>>>> origin/drm-intel-next-queued
- Fail: conflict merging origin/drm-intel-next-queued
+ ++>>>>>>> origin/drm-intel-next
+ Fail: conflict merging origin/drm-intel-next
Often it's very easy to resolve such conflicts, but maintainers can take over
when it's tricky or something fails in the below procedure.
-1. First check that drm-intel-next-queued was indeed pushed correctly and that
- your local and remote branches match.
+1. First check that drm-intel-next was indeed pushed correctly and that your
+ local and remote branches match.
2. Then rebuild the integration branch just to confirm::
diff --git a/maintainer-drm-intel.rst b/maintainer-drm-intel.rst
index 853db6b4d018..ad8b255b769d 100644
--- a/maintainer-drm-intel.rst
+++ b/maintainer-drm-intel.rst
@@ -14,22 +14,22 @@ fixes for one release. Thus for each branch, you take over from the person
maintaining the branch before you, and leave it in a known state for the person
after you.
-drm-intel-next-queued
----------------------
+drm-intel-next
+--------------
Take over when the last drm-intel feature pull has been sent for an upcoming
-merge window, and drm-intel-next-queued starts targeting the next merge window
-after that. This happens around -rc5 of the current development kernel.
+merge window, and drm-intel-next starts targeting the next merge window after
+that. This happens around -rc5 of the current development kernel.
Start queuing changes for drm-next after the merge window (i.e. after
-another -rc1 is out). Send drm-intel-next-queued pull requests periodically. Use
-``dim pull-request-next``. Write a tag summary detailing the changes since the
-last tag.
-
-Do backmerges as needed, but also don't let drm-intel-next-queued fall too much
-behind from drm-next; use your discretion. Use ``dim backmerge``. Never rebase
-or force push. Only do backmerges from drm-next. Specifically, don't merge
-drm-misc branches or backmerge Linus' tree directly; they all need to go through
+another -rc1 is out). Send drm-intel-next pull requests periodically. Use ``dim
+pull-request-next``. Write a tag summary detailing the changes since the last
+tag.
+
+Do backmerges as needed, but also don't let drm-intel-next fall too much behind
+from drm-next; use your discretion. Use ``dim backmerge``. Never rebase or force
+push. Only do backmerges from drm-next. Specifically, don't merge drm-misc
+branches or backmerge Linus' tree directly; they all need to go through
drm-next. Request drm-misc maintainers to have your dependencies sent to
drm-next, and request Dave to have Linus' tree backmerged to drm-next.
@@ -47,8 +47,8 @@ job to ensure deadlines are met, but to raise awareness. Avoid surprising
people.
When sending the last feature pull request, pass the torch to the next in
-rotation to maintain drm-intel-next-queued. Move on to drm-intel-next-fixes to
-follow through with the features you handled.
+rotation to maintain drm-intel-next. Move on to drm-intel-next-fixes to follow
+through with the features you handled.
drm-intel-next-fixes
--------------------
@@ -57,7 +57,7 @@ After the last drm-intel feature pull request has been merged to drm-next,
somewhere around -rc6 or -rc7 time frame, rebase drm-intel-next-fixes on top of
drm-next, and push. Use ``dim rebase``.
-Cherry pick fixes from drm-intel-next-queued periodically. Use ``dim
+Cherry pick fixes from drm-intel-next periodically. Use ``dim
cherry-pick-next-fixes``. The cherry-picks are automated based on Fixes: and Cc:
stable tags. Double check that they make sense. Use ``dim push-next-fixes`` to
push. Stop cherry-picking during the merge window, and only pick the fixes that
@@ -107,7 +107,7 @@ next week.
After the rebase, give CI time to run the plain upstream tag, to detect issues
introduced by Linus' upstream.
-Before Wednesday, cherry pick fixes from drm-intel-next-queued. Use ``dim
+Before Wednesday, cherry pick fixes from drm-intel-next. Use ``dim
cherry-pick-fixes``. The cherry-picks are automated based on Fixes: and Cc:
stable tags. Double check that they make sense. Be more and more critical toward
the higher -rc, nearing stable kernel rules for commits, and drop commits that
@@ -129,4 +129,4 @@ After vX.Y release, rebase drm-intel-fixes one last time on that. Use ``dim
rebase drm-intel-fixes vX.Y``.
It's time to take a break from maintaining branches, until you start over with
-drm-intel-next-queued.
+drm-intel-next.
diff --git a/repositories.rst b/repositories.rst
index eace4198169e..1fd530b45226 100644
--- a/repositories.rst
+++ b/repositories.rst
@@ -106,8 +106,8 @@ large pool of committers. Consists mostly of ``drivers/gpu/drm/i915``.
.. _the drm-intel repository: https://cgit.freedesktop.org/drm/drm-intel
-drm-intel-next-queued (aka "dinq")
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+drm-intel-next (aka "din")
+~~~~~~~~~~~~~~~~~~~~~~~~~~
This is the branch where all new features, as well as any non-trivial or
controversial fixes, are applied.
@@ -115,17 +115,15 @@ controversial fixes, are applied.
This branch "hides" the merge window from the drm/i915 developers; patches are
applied here regardless of the development phase of Linus' upstream kernel.
-drm-intel-next
-~~~~~~~~~~~~~~
-
-drm-intel-next-queued at some point in time.
+(This branch is effectively the same as drm-intel-next-queued, or "dinq", used
+to be.)
drm-intel-next-fixes (aka "dinf")
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This branch contains drm/i915 specific fixes to drm-next after the drm/i915
-features have been merged there. Fixes are first applied to
-drm-intel-next-queued, and cherry-picked to drm-intel-next-fixes.
+features have been merged there. Fixes are first applied to drm-intel-next, and
+cherry-picked to drm-intel-next-fixes.
Pull requests to Dave are sent as needed, with no particular schedule.
@@ -133,9 +131,9 @@ drm-intel-fixes (aka "-fixes")
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This branch contains fixes to Linus' tree after drm-next has been merged during
-the merge window. Fixes are first applied to drm-intel-next-queued, and
-cherry-picked to drm-intel-fixes. The fixes are then merged through drm-fixes.
-Valid from -rc1 to the kernel release.
+the merge window. Fixes are first applied to drm-intel-next, and cherry-picked
+to drm-intel-fixes. The fixes are then merged through drm-fixes. Valid
+from -rc1 to the kernel release.
Usually Linus releases each -rc on a Sunday, and drm-intel-fixes gets rebased on
that the following Monday. Usually this is a fast-forward. The pull request to
--
2.20.1
More information about the dim-tools
mailing list