[PATCH] drm-misc: Flesh out the documentation a bit
Daniel Vetter
daniel.vetter at ffwll.ch
Wed Nov 23 14:28:03 UTC 2016
Gustovo asked whether there's docs for drm-misc, so took the
opportunity to flesh out the very sparse existing write-up. Also
adjust it to reality, since we've started to take some pretty big
features in through drm-misc (like explicit fencing for atomic).
v2: Be more clear on scope of drm-misc (Jani).
Acked-by: seanpaul at chromium.org
Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
---
drm-misc.rst | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++++-------
1 file changed, 65 insertions(+), 8 deletions(-)
diff --git a/drm-misc.rst b/drm-misc.rst
index 2f30e18d9095..3d711ec60047 100644
--- a/drm-misc.rst
+++ b/drm-misc.rst
@@ -6,11 +6,58 @@
drm-misc patch and upstream merge flow and timeline explained
-------------------------------------------------------------
+This document describes the flow and timeline of misc drm and gpu patches to
+various upstream trees. For a detailed list of what's all maintained in drm-misc
+grep for "drm-misc" in MAINTAINERS.
+
+Rule No. 1
+==========
+
+This document is an eternal draft and simply tries to explain the reality of how
+drm-misc is maintained. If you observe a difference between these rules and
+reality, it is your assumed responsibility to update the rules.
+
+The workflow is heavily based upon the one used to maintain the Intel drm
+driver, see `drm-intel <drm-intel.html>`_:
+
Branches
========
-Right now there's only `drm-misc`, plus maybe temporary topic branches. There's
-also a `drm-fixes` branch, which can be useful when Dave Airlie is on vacations.
+All branches are maintained in `git://anongit.freedesktop.org/drm-misc`.
+
+drm-misc-next
+~~~~~~~~~~~~~
+
+This is the main feature branch where most of the patches land. This branch is
+always open to "hide" the merge window from developers. To avoid upsetting
+linux-next and causing mayhem in the merge window in general no pull requests
+are sent to upstream 1-2 weeks before the merge window opens. Outside of that
+feature freeze period pull requests are sent to upstream roughly every week, to
+avoid too much coordination pains.
+
+If you're unsure apply your patch here, it can always be cherry-picked to one of
+the -fixes patches later on. But in contrast to the drm-intel flow
+cherry-picking is not the default.
+
+drm-misc-next-fixes
+~~~~~~~~~~~~~~~~~~~
+
+This is for bugfixes to drm-misc-next after feature freeze, but before -rc1 is
+tagged.
+
+drm-misc-fixes
+~~~~~~~~~~~~~~
+
+This is for bugfixes which target the current -rc cycle.
+
+drm-tip
+~~~~~~~
+
+This is the overall integration tree for drm, and lives in
+`git://anongit.freedesktop.org/drm-tip`. Every time one of the above branches is
+update drm-tip gets rebuild. If there's a conflict see section on `resolving
+conflicts when rebuilding drm-tip
+<drm-intel.html#resolving-conflicts-when-rebuilding-drm-tip>`_.
Merge Criteria
==============
@@ -20,11 +67,18 @@ Right now the only hard merge criteria are:
* Patch is properly reviewed or at least ack, i.e. don't just push your own
stuff directly.
-* drm-misc is for simple driver patches, odd-ball small stuff that might easily
- slip through the cracks and the more mundane DRM subsystem wide changes. Big
- stuff (new drivers, big driver updates, big new DRM core features) should go
- in through separate pull requests. Those topic branches can still be
- maintained with the dim_ tooling, but that's of course entirely optional.
+* drm-misc is for drm core (non-driver) patches, subsystem-wide refactorings,
+ and small trivial patches all over (including drivers). For a detailed list of
+ what's all maintained in drm-misc grep for "drm-misc" in MAINTAINERS.
+
+* Larger features can be merged through drm-misc too, but in some cases
+ (especially when there are cross-subsystem conflicts) it might make sense to
+ merge patches through a dedicated topic tree. The dim_ tooling has full
+ support for them, if needed.
+
+* Any non-linear actions (backmerges, merging topic branches and sending out
+ pull requests) are only done by the official drm-misc maintainers (currently
+ Daniel, Jani and Sean, see MAINTAINERS), and not by committers.
* All the x86, arm and arm64 DRM drivers need to still compile. To simplify this
we track defconfigs for all three platforms in the `drm-intel-rerere` branch.
@@ -36,10 +90,13 @@ Right now the only hard merge criteria are:
* No rebasing out mistakes, because this is a shared tree.
+* See also the extensive `committer guidelines for drm-intel
+ <drm-intel.html#committer-guidelines>`_.
+
Tooling
=======
-drm-intel git repositories are managed with dim_:
+drm-misc git repositories are managed with dim_:
.. _dim: dim.html
--
2.10.2
More information about the dri-devel
mailing list