blob: 9d3e104191196c1b3169a323830922266b6aa4d6 [file] [log] [blame]
GDB Maintainers
This file describes different groups of people who are, together, the
maintainers and developers of the GDB project. Don't worry - it sounds
more complicated than it really is.
There are four groups of GDB developers, covering the patch development and
review process:
- The Global Maintainers.
These are the developers in charge of most daily development. They
have wide authority to apply and reject patches, but defer to the
Responsible Maintainers (see below) within their spheres of
- The Responsible Maintainers.
These are developers who have expertise and interest in a particular
area of GDB, who are generally available to review patches, and who
prefer to enforce a single vision within their areas.
- The Authorized Committers.
These are developers who are trusted to make changes within a specific
area of GDB without additional oversight.
- The Write After Approval Maintainers.
These are developers who have write access to the GDB source tree. They
can check in their own changes once a developer with the appropriate
authority has approved the changes; they can also apply the Obvious
Fix Rule (below).
All maintainers are encouraged to post major patches to the gdb-patches
mailing list for comments, even if they have the authority to commit the
patch without review from another maintainer. This especially includes
patches which change internal interfaces (e.g. global functions, data
structures) or external interfaces (e.g. user, remote, MI, et cetera).
The term "review" is used in this file to describe several kinds of feedback
from a maintainer: approval, rejection, and requests for changes or
clarification with the intention of approving a revised version. Review is
a privilege and/or responsibility of various positions among the GDB
Maintainers. Of course, anyone - whether they hold a position but not the
relevant one for a particular patch, or are just following along on the
mailing lists for fun, or anything in between - may suggest changes or
ask questions about a patch!
There's also a couple of other people who play special roles in the GDB
community, separately from the patch process:
- The GDB Steering Committee.
These are the official (FSF-appointed) maintainers of GDB. They have
final and overriding authority for all GDB-related decisions, including
anything described in this file. The committee is not generally
involved in day-to-day development (although its members may be, as
- The Release Manager.
This developer is in charge of making new releases of GDB.
- The Patch Champions.
These volunteers make sure that no contribution is overlooked or
Most changes to the list of maintainers in this file are handled by
consensus among the global maintainers and any other involved parties.
In cases where consensus can not be reached, the global maintainers may
ask the Steering Committee for a final decision.
The Obvious Fix Rule
All maintainers listed in this file, including the Write After Approval
developers, are allowed to check in obvious fixes.
An "obvious fix" means that there is no possibility that anyone will
disagree with the change.
A good mental test is "will the person who hates my work the most be
able to find fault with the change" - if so, then it's not obvious and
needs to be posted first. :-)
Something like changing or bypassing an interface is _not_ an obvious
fix, since such a change without discussion will result in
instantaneous and loud complaints.
For documentation changes, about the only kind of fix that is obvious
is correction of a typo or bad English usage.
GDB Steering Committee
The members of the GDB Steering Committee are the FSF-appointed
maintainers of the GDB project.
The Steering Committee has final authority for all GDB-related topics;
they may make whatever changes that they deem necessary, or that the FSF
requests. However, they are generally not involved in day-to-day
The current members of the steering committee are listed below, in
alphabetical order. Their affiliations are provided for reference only -
their membership on the Steering Committee is individual and not through
their affiliation, and they act on behalf of the GNU project.
Andrew Cagney (Red Hat)
Robert Dewar (AdaCore, NYU)
Klee Dienes (Apple)
Paul Hilfinger (UC Berkeley)
Dan Jacobowitz (Google)
Stan Shebs (CodeSourcery)
Richard Stallman (FSF)
Ian Lance Taylor (Google)
Todd Whitesel
Global Maintainers
The global maintainers may review and commit any change to GDB, except in
areas with a Responsible Maintainer available. For major changes, or
changes to areas with other active developers, global maintainers are
strongly encouraged to post their own patches for feedback before
The global maintainers are responsible for reviewing patches to any area
for which no Responsible Maintainer is listed.
Global maintainers also have the authority to revert patches which should
not have been applied, e.g. patches which were not approved, controversial
patches committed under the Obvious Fix Rule, patches with important bugs
that can't be immediately fixed, or patches which go against an accepted and
documented roadmap for GDB development. Any global maintainer may request
the reversion of a patch. If no global maintainer, or responsible
maintainer in the affected areas, supports the patch (except for the
maintainer who originally committed it), then after 48 hours the maintainer
who called for the reversion may revert the patch.
No one may reapply a reverted patch without the agreement of the maintainer
who reverted it, or bringing the issue to the GDB Steering Committee for
At the moment there are no documented roadmaps for GDB development; in the
future, if there are, a reference to the list will be included here.
The current global maintainers are (in alphabetical order):
Pedro Alves
Joel Brobecker
Kevin Buettner
Andrew Cagney
Doug Evans
Daniel Jacobowitz
Mark Kettenis
Jan Kratochvil
Stan Shebs
Tom Tromey
Ulrich Weigand
Elena Zannoni
Eli Zaretskii
Release Manager
The current release manager is: Joel Brobecker <>
His responsibilities are:
* organizing, scheduling, and managing releases of GDB.
* deciding the approval and commit policies for release branches,
and can change them as needed.
Patch Champions
These volunteers track all patches submitted to the gdb-patches list. They
endeavor to prevent any posted patch from being overlooked; work with
contributors to meet GDB's coding style and general requirements, along with
FSF copyright assignments; remind (ping) responsible maintainers to review
patches; and ensure that contributors are given credit.
Current patch champions (in alphabetical order):
Randolph Chung <>
Responsible Maintainers
These developers have agreed to review patches in specific areas of GDB, in
which they have knowledge and experience. These areas are generally broad;
the role of a responsible maintainer is to provide coherent and cohesive
structure within their area of GDB, to assure that patches from many
different contributors all work together for the best results.
Global maintainers will defer to responsible maintainers within their areas,
as long as the responsible maintainer is active. Active means that
responsible maintainers agree to review submitted patches in their area
promptly; patches and followups should generally be answered within a week.
If a responsible maintainer is interested in reviewing a patch but will not
have time within a week of posting, the maintainer should send an
acknowledgement of the patch to the gdb-patches mailing list, and
plan to follow up with a review within a month. These deadlines are for
initial responses to a patch - if the maintainer has suggestions
or questions, it may take an extended discussion before the patch
is ready to commit. There are no written requirements for discussion,
but maintainers are asked to be responsive.
If a responsible maintainer misses these deadlines occasionally (e.g.
vacation or unexpected workload), it's not a disaster - any global
maintainer may step in to review the patch. But sometimes life intervenes
more permanently, and a maintainer may no longer have time for these duties.
When this happens, he or she should step down (either into the Authorized
Committers section if still interested in the area, or simply removed from
the list of Responsible Maintainers if not).
If a responsible maintainer is unresponsive for an extended period of time
without stepping down, please contact the Global Maintainers; they will try
to contact the maintainer directly and fix the problem - potentially by
removing that maintainer from their listed position.
If there are several maintainers for a given domain then any one of them
may review a submitted patch.
Target Instruction Set Architectures:
The *-tdep.c files. ISA (Instruction Set Architecture) and OS-ABI
(Operating System / Application Binary Interface) issues including CPU
The Target/Architecture maintainer works with the host maintainer when
resolving build issues. The Target/Architecture maintainer works with
the native maintainer when resolving ABI issues.
alpha --target=alpha-elf ,-Werror
arm --target=arm-elf ,-Werror
avr --target=avr ,-Werror
Tristan Gingold
cris --target=cris-elf ,-Werror ,
(sim does not build with -Werror)
frv --target=frv-elf ,-Werror
h8300 --target=h8300-elf ,-Werror
i386 --target=i386-elf ,-Werror
Mark Kettenis
ia64 --target=ia64-linux-gnu ,-Werror
(--target=ia64-elf broken)
lm32 --target=lm32-elf ,-Werror
m32c --target=m32c-elf ,-Werror
m32r --target=m32r-elf ,-Werror
m68hc11 --target=m68hc11-elf ,-Werror ,
Stephane Carrez
m68k --target=m68k-elf ,-Werror
m88k --target=m88k-openbsd ,-Werror
Mark Kettenis
mcore Deleted
mep --target=mep-elf ,-Werror
Kevin Buettner
microblaze --target=microblaze-xilinx-elf ,-Werror
--target=microblaze-linux-gnu ,-Werror
Michael Eager
mips --target=mips-elf ,-Werror
Maciej W. Rozycki
mn10300 --target=mn10300-elf broken
(sim/ dies with make -j)
moxie --target=moxie-elf ,-Werror
Anthony Green
ms1 --target=ms1-elf ,-Werror
Kevin Buettner
ns32k Deleted
pa --target=hppa-elf ,-Werror
powerpc --target=powerpc-eabi ,-Werror
rl78 --target=rl78-elf ,-Werror
rx --target=rx-elf ,-Werror
s390 --target=s390-linux-gnu ,-Werror
score --target=score-elf
sh --target=sh-elf ,-Werror
--target=sh64-elf ,-Werror
sparc --target=sparc64-solaris2.10 ,-Werror
(--target=sparc-elf broken)
spu --target=spu-elf ,-Werror
Ulrich Weigand
tic6x --target=tic6x-elf ,-Werror
Yao Qi
v850 --target=v850-elf ,-Werror
vax --target=vax-netbsd ,-Werror
x86-64 --target=x86_64-linux-gnu ,-Werror
xstormy16 --target=xstormy16-elf
Corinna Vinschen
xtensa --target=xtensa-elf
Maxim Grigoriev
All developers recognized by this file can make arbitrary changes to
OBSOLETE targets.
The Bourne shell script can be used to rebuild all the
above targets.
The Native maintainer is responsible for target specific native
support - typically shared libraries and quirks to procfs/ptrace/...
The Native maintainer works with the Arch and Core maintainers when
resolving more generic problems.
The host maintainer ensures that gdb can be built as a cross debugger on
their platform.
AIX Joel Brobecker
Darwin Tristan Gingold
djgpp native Eli Zaretskii
GNU Hurd Alfred M. Szmidt
GNU/Linux/x86 native & host
Mark Kettenis
GNU/Linux MIPS native & host
Daniel Jacobowitz
GNU/Linux m68k Andreas Schwab
FreeBSD native & host Mark Kettenis
Core: Generic components used by all of GDB
threads Mark Kettenis
language support
Ada Joel Brobecker
Paul Hilfinger
C++ Daniel Jacobowitz
Objective C support Adam Fedor
shared libs Kevin Buettner
MI interface Vladimir Prus
documentation Eli Zaretskii
(including NEWS)
gdbtk (gdb.gdbtk) Keith Seitz
UI: External (user) interfaces.
gdbtk (c & tcl) Fernando Nasser
Keith Seitz
libgui (w/foundry, sn) Keith Seitz
gdb/gdbserver Daniel Jacobowitz, configure* ALL
mmalloc/ ALL Host maintainers
sim/ See sim/MAINTAINERS
readline/ Master version:
Host maintainers (host dependant parts)
(but get your changes into the master version)
tcl/ tk/ itcl/ ALL
Authorized Committers
These are developers working on particular areas of GDB, who are trusted to
commit their own (or other developers') patches in those areas without
further review from a Global Maintainer or Responsible Maintainer. They are
under no obligation to review posted patches - but, of course, are invited
to do so!
PowerPC Andrew Cagney
ARM Richard Earnshaw
CRIS Hans-Peter Nilsson
IA64 Jeff Johnston
MIPS Joel Brobecker
m32r Kei Sakamoto
PowerPC Kevin Buettner
CRIS Orjan Friberg
HPPA Randolph Chung
S390 Ulrich Weigand
djgpp DJ Delorie
[Please use this address to contact DJ about DJGPP]
tui Stephane Carrez
ia64 Kevin Buettner
AIX Kevin Buettner
GNU/Linux PPC native Kevin Buettner tests Anthony Green
FreeBSD native & host David O'Brien
event loop Elena Zannoni
generic symtabs Elena Zannoni
dwarf readers Elena Zannoni
elf reader Elena Zannoni
stabs reader Elena Zannoni
readline/ Elena Zannoni
NetBSD native & host Jason Thorpe
Pascal support Pierre Muller
avr Theodore A. Roth
Modula-2 support Gaius Mulley
Write After Approval
To get recommended for the Write After Approval list you need a valid
FSF assignment and have submitted one good patch.
Pedro Alves
David Anderson
John David Anglin
Shrinivas Atre
Sterling Augustine
Scott Bambrough
Thiago Jung Bauermann
Jon Beniston
Gary Benson
Jan Beulich
Jim Blandy
Philip Blundell
Eric Botcazou
Per Bothner
Joel Brobecker
Dave Brolley
Paul Brook
Julian Brown
Kevin Buettner
Andrew Burgess
Andrew Cagney
David Carlton
Stephane Carrez
Michael Chastain
Renquan Cheng
Eric Christopher
Randolph Chung
Nick Clifton
J.T. Conklin
Brendan Conoboy
Ludovic Court├Ęs
Sanjoy Das
Jean-Charles Delay
DJ Delorie
Chris Demetriou
Philippe De Muyter
Dhananjay Deshpande
Markus Deuling
Klee Dienes
Gabriel Dos Reis
Sergio Durigan Junior
Michael Eager
Richard Earnshaw
Steve Ellcey
Frank Ch. Eigler
Ben Elliston
Doug Evans
Adam Fedor
Brian Ford
Orjan Friberg
Nathan Froyd
Gary Funck
Paul Gilliam
Tristan Gingold
Anton Gorenkov
Raoul Gough
Anthony Green
Matthew Green
Matthew Gretton-Dann
Maxim Grigoriev
Jerome Guitton
Ben Harris
Richard Henderson
Aldy Hernandez
Paul Hilfinger
Matt Hiller
Kazu Hirata
Jeff Holcomb
Don Howard
Nick Hudson
Martin Hunt
Meador Inge
Jim Ingham
Baurzhan Ismagulov
Manoj Iyer
Daniel Jacobowitz
Andreas Jaeger
Janis Johnson
Jeff Johnston
Geoff Keating
Mark Kettenis
Marc Khouzam
Jim Kingdon
Paul Koning
Jan Kratochvil
Jonathan Larmour
Jeff Law
Justin Lebar
David Lecomber
Don Lee
Robert Lipe
Sandra Loosemore
H.J. Lu
Michal Ludvig
Edjunior B. Machado
Luis Machado
Glen McCready
Greg McGary
Roland McGrath
Bryce McKinlay
Jason Merrill
David S. Miller
Mark Mitchell
Marko Mlinar
Alan Modra
Fawzi Mohamed
Jason Molenda
Chris Moller
Phil Muldoon
Pierre Muller
Gaius Mulley
Masaki Muranaka
Joseph Myers
Fernando Nasser
Adam Nemet
Nathanael Nerode
Hans-Peter Nilsson
David O'Brien
Alexandre Oliva
Karen Osmond
Pawandeep Oza
Denis Pilat
Andrew Pinski
Kevin Pouget
Paul Pluzhnikov
Marek Polacek
Siddhesh Poyarekar
Vladimir Prus
Yao Qi
Siva Chandra Reddy
Matt Rice
Frederic Riss
Aleksandar Ristovski
Tom Rix
Nick Roberts
Bob Rossi
Theodore A. Roth
Ian Roxborough
Maciej W. Rozycki
Grace Sainsbury
Kei Sakamoto
Mark Salter
Richard Sandiford
Iain Sandoe
Peter Schauer
Andreas Schwab
Thomas Schwinge
Keith Seitz
Carlos Eduardo Seo
Ozkan Sezer
Stan Shebs
Joel Sherrill
Mark Shinwell
Craig Silverstein
Aidan Skinner
Jiri Smid
Andrey Smirnov
David Smith
Stephen P. Smith
Jackie Smith Cashion
Petr Sorfa
Andrew Stubbs
Emi Suzuki
Ian Lance Taylor
Gary Thomas
Jason Thorpe
Caroline Tice
Kai Tietz
Andreas Tobler
Tom Tromey
David Ung
D Venkatasubramanian
Corinna Vinschen
Sami Wagiaalla
Keith Walker
Kris Warkentin
Philippe Waroquiers
Ulrich Weigand
Ken Werner
Mark Wielaard
Nathan Williams
Bob Wilson
Jim Wilson
Kwok Cheung Yeung
Elena Zannoni
Eli Zaretskii
Jie Zhang
Wu Zhou
Yoshinori Sato
Hui Zhu
Past Maintainers
Whenever removing yourself, or someone else, from this file, consider
listing their areas of development here for posterity.
Jimmy Guo (gdb.hp, tui) guo at cup dot hp dot com
Jeff Law (hppa) law at cygnus dot com
Daniel Berlin (C++ support) dan at cgsoftware dot com
Nick Duffek (powerpc, SCO, Sol/x86) nick at duffek dot com
David Taylor (d10v, sparc, utils, defs,
expression evaluator, language support) taylor at candd dot org
J.T. Conklin (dcache, NetBSD, remote, global) jtc at acorntoolworks dot com
Frank Ch. Eigler (sim) fche at redhat dot com
Per Bothner (Java) per at bothner dot com
Anthony Green (Java) green at redhat dot com
Fernando Nasser (testsuite/, mi, cli, KOD) fnasser at redhat dot com
Mark Salter (testsuite/lib+config) msalter at redhat dot com
Jim Kingdon (web pages) kingdon at panix dot com
Jim Ingham (gdbtk, libgui) jingham at apple dot com
Mark Kettenis (hurd native) kettenis at gnu dot org
Ian Roxborough (in-tree tcl, tk, itcl) irox at redhat dot com
Robert Lipe (SCO/Unixware) rjl at sco dot com
Peter Schauer (global, AIX, xcoffsolib,
Solaris/x86) Peter.Schauer at mytum dot de
Scott Bambrough (ARM) scottb at netwinder dot org
Philippe De Muyter (coff) phdm at macqel dot be
Michael Chastain (testsuite) mec.gnu at mindspring dot com
Fred Fish (global)
Jim Blandy (global)
Michael Snyder (global)
Christopher Faylor (MS Windows, host & native)
Folks that have been caught up in a paper trail:
David Carlton
Ramana Radhakrishnan
;; Local Variables:
;; coding: utf-8
;; End: