treewide: remove redundant IS_ERR() before error code check
[linux/fpc-iii.git] / Documentation / process / code-of-conduct-interpretation.rst
blobe899f14a4ba24058e07d6411f5692d6db574c326
1 .. _code_of_conduct_interpretation:
3 Linux Kernel Contributor Covenant Code of Conduct Interpretation
4 ================================================================
6 The :ref:`code_of_conduct` is a general document meant to
7 provide a set of rules for almost any open source community.  Every
8 open-source community is unique and the Linux kernel is no exception.
9 Because of this, this document describes how we in the Linux kernel
10 community will interpret it.  We also do not expect this interpretation
11 to be static over time, and will adjust it as needed.
13 The Linux kernel development effort is a very personal process compared
14 to "traditional" ways of developing software.  Your contributions and
15 ideas behind them will be carefully reviewed, often resulting in
16 critique and criticism.  The review will almost always require
17 improvements before the material can be included in the
18 kernel.  Know that this happens because everyone involved wants to see
19 the best possible solution for the overall success of Linux.  This
20 development process has been proven to create the most robust operating
21 system kernel ever, and we do not want to do anything to cause the
22 quality of submission and eventual result to ever decrease.
24 Maintainers
25 -----------
27 The Code of Conduct uses the term "maintainers" numerous times.  In the
28 kernel community, a "maintainer" is anyone who is responsible for a
29 subsystem, driver, or file, and is listed in the MAINTAINERS file in the
30 kernel source tree.
32 Responsibilities
33 ----------------
35 The Code of Conduct mentions rights and responsibilities for
36 maintainers, and this needs some further clarifications.
38 First and foremost, it is a reasonable expectation to have maintainers
39 lead by example.
41 That being said, our community is vast and broad, and there is no new
42 requirement for maintainers to unilaterally handle how other people
43 behave in the parts of the community where they are active.  That
44 responsibility is upon all of us, and ultimately the Code of Conduct
45 documents final escalation paths in case of unresolved concerns
46 regarding conduct issues.
48 Maintainers should be willing to help when problems occur, and work with
49 others in the community when needed.  Do not be afraid to reach out to
50 the Technical Advisory Board (TAB) or other maintainers if you're
51 uncertain how to handle situations that come up.  It will not be
52 considered a violation report unless you want it to be.  If you are
53 uncertain about approaching the TAB or any other maintainers, please
54 reach out to our conflict mediator, Mishi Choudhary <mishi@linux.com>.
56 In the end, "be kind to each other" is really what the end goal is for
57 everybody.  We know everyone is human and we all fail at times, but the
58 primary goal for all of us should be to work toward amicable resolutions
59 of problems.  Enforcement of the code of conduct will only be a last
60 resort option.
62 Our goal of creating a robust and technically advanced operating system
63 and the technical complexity involved naturally require expertise and
64 decision-making.
66 The required expertise varies depending on the area of contribution.  It
67 is determined mainly by context and technical complexity and only
68 secondary by the expectations of contributors and maintainers.
70 Both the expertise expectations and decision-making are subject to
71 discussion, but at the very end there is a basic necessity to be able to
72 make decisions in order to make progress.  This prerogative is in the
73 hands of maintainers and project's leadership and is expected to be used
74 in good faith.
76 As a consequence, setting expertise expectations, making decisions and
77 rejecting unsuitable contributions are not viewed as a violation of the
78 Code of Conduct.
80 While maintainers are in general welcoming to newcomers, their capacity
81 of helping contributors overcome the entry hurdles is limited, so they
82 have to set priorities.  This, also, is not to be seen as a violation of
83 the Code of Conduct.  The kernel community is aware of that and provides
84 entry level programs in various forms like kernelnewbies.org.
86 Scope
87 -----
89 The Linux kernel community primarily interacts on a set of public email
90 lists distributed around a number of different servers controlled by a
91 number of different companies or individuals.  All of these lists are
92 defined in the MAINTAINERS file in the kernel source tree.  Any emails
93 sent to those mailing lists are considered covered by the Code of
94 Conduct.
96 Developers who use the kernel.org bugzilla, and other subsystem bugzilla
97 or bug tracking tools should follow the guidelines of the Code of
98 Conduct.  The Linux kernel community does not have an "official" project
99 email address, or "official" social media address.  Any activity
100 performed using a kernel.org email account must follow the Code of
101 Conduct as published for kernel.org, just as any individual using a
102 corporate email account must follow the specific rules of that
103 corporation.
105 The Code of Conduct does not prohibit continuing to include names, email
106 addresses, and associated comments in mailing list messages, kernel
107 change log messages, or code comments.
109 Interaction in other forums is covered by whatever rules apply to said
110 forums and is in general not covered by the Code of Conduct.  Exceptions
111 may be considered for extreme circumstances.
113 Contributions submitted for the kernel should use appropriate language.
114 Content that already exists predating the Code of Conduct will not be
115 addressed now as a violation.  Inappropriate language can be seen as a
116 bug, though; such bugs will be fixed more quickly if any interested
117 parties submit patches to that effect.  Expressions that are currently
118 part of the user/kernel API, or reflect terminology used in published
119 standards or specifications, are not considered bugs.
121 Enforcement
122 -----------
124 The address listed in the Code of Conduct goes to the Code of Conduct
125 Committee.  The exact members receiving these emails at any given time
126 are listed at https://kernel.org/code-of-conduct.html.  Members can not
127 access reports made before they joined or after they have left the
128 committee.
130 The initial Code of Conduct Committee consists of volunteer members of
131 the TAB, as well as a professional mediator acting as a neutral third
132 party.  The first task of the committee is to establish documented
133 processes, which will be made public.
135 Any member of the committee, including the mediator, can be contacted
136 directly if a reporter does not wish to include the full committee in a
137 complaint or concern.
139 The Code of Conduct Committee reviews the cases according to the
140 processes (see above) and consults with the TAB as needed and
141 appropriate, for instance to request and receive information about the
142 kernel community.
144 Any decisions by the committee will be brought to the TAB, for
145 implementation of enforcement with the relevant maintainers if needed.
146 A decision by the Code of Conduct Committee can be overturned by the TAB
147 by a two-thirds vote.
149 At quarterly intervals, the Code of Conduct Committee and TAB will
150 provide a report summarizing the anonymised reports that the Code of
151 Conduct committee has received and their status, as well details of any
152 overridden decisions including complete and identifiable voting details.
154 We expect to establish a different process for Code of Conduct Committee
155 staffing beyond the bootstrap period.  This document will be updated
156 with that information when this occurs.