misc: Add MAINTAINERS file
authorJason Lowe-Power <jason@lowepower.com>
Tue, 11 Apr 2017 21:17:10 +0000 (16:17 -0500)
committerJason Lowe-Power <jason@lowepower.com>
Tue, 25 Apr 2017 20:59:01 +0000 (20:59 +0000)
This file defines all of the commit keywords used for gem5 commits and
the maintainter(s) for each of these keywords.

This patch introduces a number of new keywords, and changes to previous
keywords. The new keywords better follow gem5's directory structure and
are more extensible.

Currently, most keywords do not have a maintainer. More maintainers will
be added as more people volunteer to be maintainers.

This patch also updates the CONTRIBUTING.md file to point to this file
instead of listing the keywords separately. When this file is committed
the wiki will also be updated accordingly.

Change-Id: Ib0abfeb39a3ca01b74b340e24dc9a2cd95ff813f
Signed-off-by: Jason Lowe-Power <jason@lowepower.com>
Reviewed-on: https://gem5-review.googlesource.com/2760
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
CONTRIBUTING.md
MAINTAINERS [new file with mode: 0644]

index a9781a34d307d78d356479d9215065b102388d42..e1b3c6d1bd2c5e192d46ff7568ecf6ac6239a1d5 100644 (file)
@@ -113,10 +113,10 @@ changes, we require all change descriptions be strictly formatted.
 
 A canonical commit message consists of three parts:
  * A short summary line describing the change. This line starts with one or
-   more keywords separated by commas followed by a colon and a description of
-   the change. This line should be no more than 65 characters long since
-   version control systems usually add a prefix that causes line-wrapping for
-   longer lines.
+   more keywords (found in the MAINTAINERS file) separated by commas followed
+   by a colon and a description of the change. This line should be no more than
+   65 characters long since version control systems usually add a prefix that
+   causes line-wrapping for longer lines.
  * (Optional, but highly recommended) A detailed description. This describes
    what you have done and why. If the change isn't obvious, you might want to
    motivate why it is needed. Lines need to be wrapped to 75 characters or
@@ -125,31 +125,6 @@ A canonical commit message consists of three parts:
    tags to acknowledge reviewers for their work. Gerrit will automatically add
    most tags.
 
-The keyword should be one or more of the following separated by commas:
- * Architecture name in lower case (e.g., arm or x86): Anything that is
-   target-architecture specific.
- * base
- * ext
- * stats
- * sim
- * syscall_emul
- * config:
- * mem: Classic memory system. Ruby uses its own keyword.
- * ruby: Ruby memory models.
- * cpu: CPU-model specific (except for kvm)
- * kvm: KVM-specific. Changes to host architecture specific components should
-   include an architecture keyword (e.g., arm or x86) as well.
- * gpu-compute
- * energy
- * dev
- * arch: General architecture support (src/arch/)
- * scons: Build-system related. Trivial changes as a side effect of doing
-   something unrelated (e.g., adding a source file to a SConscript) don't
-   require this.
- * tests
- * style: Changes to the style checkers of style fixes.
- * misc
-
 Tags are an optional mechanism to store additional metadata about a patch and
 acknowledge people who reported a bug or reviewed that patch. Tags are
 generally appended to the end of the commit message in the order they happen.
diff --git a/MAINTAINERS b/MAINTAINERS
new file mode 100644 (file)
index 0000000..71713cd
--- /dev/null
@@ -0,0 +1,90 @@
+See CONTRIBUTING.md for details of gem5's contribution process.
+
+This file contains the keywords used in commit messages. Each keyword has one
+or more maintainers. At least one (not all) of these maintainers must review
+the patch before it can be pushed. These people will automatically be emailed
+when you upload the patch to Gerrit (https://gem5-review.googlesource.com).
+These keywords mostly follow the directory structure.
+
+Individuals on the project management committee are maintainers for all of the
+gem5 components (i.e., they can review any patch as the maintainer). These
+individuals are required to review any patches to components without explicit
+maintainers.
+
+PMC Members (general maintainers):
+  Ali Saidi <asaidi@gmail.com>
+  Andreas Hansson <andreas.hansson@arm.com>
+  Andreas Sandberg <andreas.sandberg@arm.com>
+  Tony Gutierrez <anthony.gutierrez@amd.com>
+  Brad Beckmann <brad.beckmann@amd.com>
+  Jason Lowe-Power <jason@lowepower.com>
+  Nathan Binkert <nate@binkert.org>
+  Steve Reinhardt <stever@gmail.com>
+
+arch: General architecture-specific components
+  Gabe Black <gabeblack@google.com>
+arch-alpha:
+arch-arm:
+  Andreas Sandberg <andreas.sandberg@arm.com>
+arch-hsail:
+  Tony Gutierrez <anthony.gutierrez@amd.com>
+arch-mips:
+arch-power:
+arch-riscv:
+  Alec Roelke <ar4jc@virginia.edu>
+arch-sparc:
+  Gabe Black <gabeblack@google.com>
+arch-x86:
+  Gabe Black <gabeblack@google.com>
+
+base:
+
+configs:
+  Jason Lowe-Power <jason@lowepower.com>
+
+cpu: General changes to all CPU models (e.g., BaseCPU)
+cpu-kvm:
+  Andreas Sandberg <andreas.sandberg@arm.com>
+cpu-minor:
+cpu-o3:
+cpu-simple:
+
+dev:
+dev-virtio:
+  Andreas Sandberg <andreas.sandberg@arm.com>
+
+ext: Components external to gem5
+
+gpu-compute:
+  Tony Gutierrez <anthony.gutierrez@amd.com>
+
+mem: General memory system (e.g., XBar, Packet)
+  Nikos Nikoleris <nikos.nikoleris@arm.com>
+mem-cache: Classic caches and coherence
+  Nikos Nikoleris <nikos.nikoleris@arm.com>
+mem-garnet: Garnet subcomponent of Ruby
+  Tushar Krishna <tushar@ece.gatech.edu>
+mem-ruby: Ruby structures and protocols
+  Brad Beckmann <brad.beckmann@amd.com>
+  Jason Lowe-Power <jason@lowepower.com>
+
+misc: Anything outside of the other categories
+
+python: Python SimObject wrapping and infrastructure
+  Andreas Sandberg <andreas.sandberg@arm.com>
+
+scons: Build system
+
+sim: General simulation components
+  Jason Lowe-Power <jason@lowepower.com>
+sim-se: Syscall emulation
+  Brandon Potter <brandon.potter@amd.com>
+sim-power: Power modeling
+  Andreas Sandberg <andreas.sandberg@arm.com>
+
+stats: Updates to statistics for regressions
+
+tests: testing changes (not stats updates for tests. See stats:)
+  Andreas Sandberg <andreas.sandberg@arm.com>
+
+util: