[PATCH v2] doc: move drm-misc committer guidelines
Daniel Vetter
daniel at ffwll.ch
Thu Nov 1 10:48:14 UTC 2018
On Wed, Oct 31, 2018 at 03:42:02PM -0400, Sean Paul wrote:
> On Wed, Oct 31, 2018 at 09:52:27AM +0200, Jani Nikula wrote:
> > Move drm-misc under the common committer guidelines.
> >
> > v2: s/drm-intel/drm-misc/ under tooling (Emil)
> >
> > Acked-by: Daniel Stone <daniels at collabora.com>
> > Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
> > Signed-off-by: Jani Nikula <jani.nikula at intel.com>
> > ---
> > committer-drm-misc.rst | 101 +++++++++++++++++++++++++++++++++++++++++++++++
> > committer-guidelines.rst | 1 +
> > drm-misc.rst | 95 --------------------------------------------
> > 3 files changed, 102 insertions(+), 95 deletions(-)
> > create mode 100644 committer-drm-misc.rst
> >
> > diff --git a/committer-drm-misc.rst b/committer-drm-misc.rst
> > new file mode 100644
> > index 000000000000..53cffea548ff
> > --- /dev/null
> > +++ b/committer-drm-misc.rst
> > @@ -0,0 +1,101 @@
> > +.. _committer-drm-misc:
> > +
> > +===============================
> > + drm-misc Committer Guidelines
> > +===============================
> > +
> > +This document describes the detailed merge criteria and committer guidelines for
> > +drm-misc. The same criteria and guidelines apply equally to both committers and
> > +maintainers.
> > +
> > +Where Do I Apply My Patch?
> > +==========================
> > +
> > +Consult this handy flowchart to determine the best branch for your patch. If in
> > +doubt, apply to drm-misc-next or ask your favorite maintainer on IRC.
> > +
> > +.. image:: drm-misc-commit-flow.svg
> > +
> > +Merge Criteria
> > +==============
> > +
> > +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. This rule holds even more for bugfix patches - it would be
> > + embarrassing if the bugfix contains a small gotcha that review would have
> > + caught.
> > +
> > +* 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 (see
> > + MAINTAINERS, or ask #dri-devel), and not by committers. See the
> > + `examples section in dim <dim.html#examples>`_ for more info
> > +
> > +* 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.
>
> s/drm-intel-rerere/rerere-cache/ ?
>
> > +
> > +* The goal is to also pre-check everything with CI. Unfortunately neither the
> > + arm side (using kernelci.org and generic i-g-t tests) nor the Intel side
> > + (using Intel CI infrastructure and the full i-g-t suite) isn't yet fully ready
>
> s/isn't yet/is/
>
> > + for production.
> > +
> > +* No rebasing out mistakes, because this is a shared tree.
> > +
> > +* See also the extensive :ref:`committer-drm-intel`.
> > +
> > +Small Drivers
> > +=============
> > +
> > +Small drivers, where a full tree is overkill, can be maintained in drm-misc. For
> > +now there are just a few drivers maintained in drm-misc, but we can slowly add
>
> We're beyond "just a few" at this point. Can you just remove this sentence?
I think that entire sentence can go. We figured out how to maintain small
stuff in drm-misc, it seems to work rather well imo.
-Daniel
>
> With those,
>
> Reviewed-by: Sean Paul <sean at poorly.run>
>
>
>
> > +more to figure out how to make this scale. Slightly different rules apply:
> > +
> > +* Small is measured in patches merged per kernel release. The occasional big
> > + patch series is still acceptable if it's not a common thing (e.g. new hw
> > + enabling once a year), and if the series is really big (more than 20 patches)
> > + it should probably be managed through a topic branch in drm-misc and with a
> > + separate pull request to drm maintainer. dim_ supports this with the
> > + create-branch command. Everything that doesn't justify a topic branch goes
> > + into the normal drm-misc branches directly.
> > +
> > +* Group maintainership is assumed, i.e. all regular contributors (not just
> > + the primary maintainer) will get commit rights.
> > +
> > +* Since even a broken driver is more useful than no driver minimal review
> > + standards are a lot lower. The default should be some notes about what could
> > + be improved in follow-up work and accepting patches by default. Maintainer
> > + group for drivers can agree on stricter rules, especially when they have a
> > + bigger user base that shouldn't suffer from regressions.
> > +
> > +* Minimal peer-review is also expected for drivers with just one contributor,
> > + but obviously then only focuses on best practices for the interaction with drm
> > + core and helpers. Plus a bit looking for common patterns in dealing with the
> > + hardware, since display IP all has to handle the same issues in the end. In
> > + most cases this will just along the lines of "Looks good, Ack". drm-misc
> > + maintainers will help out with getting that review market going.
> > +
> > +* Best practice for review: When you have some suggestions and comments for
> > + future work, please make sure you don't forget your Ack tag to unblock the
> > + original patch. And if you think something really must be fixed before
> > + merging, please give a conditional Ack along the lines of "Fix
> > + $specific_thing, with that addressed, Ack". The goal is to always have a clear
> > + and reasonable speedy path towards getting the patch merged. For authors on
> > + the other side, just do the minimal rework and push the patch, and do any
> > + more involved rework in follow-up work. This way lengthy review cycles get
> > + avoided, which are a drag for both reviewer and author.
> > +
> > +Tooling
> > +=======
> > +
> > +drm-misc git repositories are managed with dim_.
> > +
> > +.. _dim: dim.html
> > diff --git a/committer-guidelines.rst b/committer-guidelines.rst
> > index c0ed6d942aa7..46ac6164bcc3 100644
> > --- a/committer-guidelines.rst
> > +++ b/committer-guidelines.rst
> > @@ -9,4 +9,5 @@ This document gathers together committer guidelines.
> > .. toctree::
> > :maxdepth: 2
> >
> > + committer-drm-misc
> > committer-drm-intel
> > diff --git a/drm-misc.rst b/drm-misc.rst
> > index a0217bc78f1d..832aeb33ffe9 100644
> > --- a/drm-misc.rst
> > +++ b/drm-misc.rst
> > @@ -34,14 +34,6 @@ Branches
> >
> > See :ref:`drm-misc-repository`.
> >
> > -Where Do I Apply My Patch?
> > -~~~~~~~~~~~~~~~~~~~~~~~~~~
> > -
> > -Consult this handy flowchart to determine the best branch for your patch. If in
> > -doubt, apply to drm-misc-next or ask your favorite maintainer on IRC.
> > -
> > -.. image:: drm-misc-commit-flow.svg
> > -
> > Merge Timeline
> > ~~~~~~~~~~~~~~
> >
> > @@ -52,85 +44,6 @@ release. There are no fast paths.
> >
> > .. include:: drm-misc-timeline.rst
> >
> > -
> > -Merge Criteria
> > -==============
> > -
> > -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. This rule holds even more for bugfix patches - it would be
> > - embarrassing if the bugfix contains a small gotcha that review would have
> > - caught.
> > -
> > -* 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 (see
> > - MAINTAINERS, or ask #dri-devel), and not by committers. See the
> > - `examples section in dim <dim.html#examples>`_ for more info
> > -
> > -* 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.
> > -
> > -* The goal is to also pre-check everything with CI. Unfortunately neither the
> > - arm side (using kernelci.org and generic i-g-t tests) nor the Intel side
> > - (using Intel CI infrastructure and the full i-g-t suite) isn't yet fully ready
> > - for production.
> > -
> > -* No rebasing out mistakes, because this is a shared tree.
> > -
> > -* See also the extensive `committer guidelines for drm-intel
> > - <drm-intel.html#committer-guidelines>`_.
> > -
> > -Small Drivers
> > -=============
> > -
> > -Small drivers, where a full tree is overkill, can be maintained in drm-misc. For
> > -now there are just a few drivers maintained in drm-misc, but we can slowly add
> > -more to figure out how to make this scale. Slightly different rules apply:
> > -
> > -* Small is measured in patches merged per kernel release. The occasional big
> > - patch series is still acceptable if it's not a common thing (e.g. new hw
> > - enabling once a year), and if the series is really big (more than 20 patches)
> > - it should probably be managed through a topic branch in drm-misc and with a
> > - separate pull request to drm maintainer. dim_ supports this with the
> > - create-branch command. Everything that doesn't justify a topic branch goes
> > - into the normal drm-misc branches directly.
> > -
> > -* Group maintainership is assumed, i.e. all regular contributors (not just
> > - the primary maintainer) will get commit rights.
> > -
> > -* Since even a broken driver is more useful than no driver minimal review
> > - standards are a lot lower. The default should be some notes about what could
> > - be improved in follow-up work and accepting patches by default. Maintainer
> > - group for drivers can agree on stricter rules, especially when they have a
> > - bigger user base that shouldn't suffer from regressions.
> > -
> > -* Minimal peer-review is also expected for drivers with just one contributor,
> > - but obviously then only focuses on best practices for the interaction with drm
> > - core and helpers. Plus a bit looking for common patterns in dealing with the
> > - hardware, since display IP all has to handle the same issues in the end. In
> > - most cases this will just along the lines of "Looks good, Ack". drm-misc
> > - maintainers will help out with getting that review market going.
> > -
> > -* Best practice for review: When you have some suggestions and comments for
> > - future work, please make sure you don't forget your Ack tag to unblock the
> > - original patch. And if you think something really must be fixed before
> > - merging, please give a conditional Ack along the lines of "Fix
> > - $specific_thing, with that addressed, Ack". The goal is to always have a clear
> > - and reasonable speedy path towards getting the patch merged. For authors on
> > - the other side, just do the minimal rework and push the patch, and do any
> > - more involved rework in follow-up work. This way lengthy review cycles get
> > - avoided, which are a drag for both reviewer and author.
> > -
> > Maintainer's Duties
> > ===================
> >
> > @@ -174,11 +87,3 @@ Maintainers mostly provide services to keep drm-misc running smoothly:
> >
> > * Take the blame when something goes wrong. Maintainers interface and represent
> > the entire group of committers to the wider kernel community.
> > -
> > -Tooling
> > -=======
> > -
> > -drm-misc git repositories are managed with dim_:
> > -
> > -.. _dim: dim.html
> > -
> > --
> > 2.11.0
> >
> > _______________________________________________
> > dim-tools mailing list
> > dim-tools at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/dim-tools
>
> --
> Sean Paul, Software Engineer, Google / Chromium OS
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
More information about the dim-tools
mailing list