18c2ecf20Sopenharmony_ci.. _code_of_conduct_interpretation:
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciLinux Kernel Contributor Covenant Code of Conduct Interpretation
48c2ecf20Sopenharmony_ci================================================================
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_ciThe :ref:`code_of_conduct` is a general document meant to
78c2ecf20Sopenharmony_ciprovide a set of rules for almost any open source community.  Every
88c2ecf20Sopenharmony_ciopen-source community is unique and the Linux kernel is no exception.
98c2ecf20Sopenharmony_ciBecause of this, this document describes how we in the Linux kernel
108c2ecf20Sopenharmony_cicommunity will interpret it.  We also do not expect this interpretation
118c2ecf20Sopenharmony_cito be static over time, and will adjust it as needed.
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ciThe Linux kernel development effort is a very personal process compared
148c2ecf20Sopenharmony_cito "traditional" ways of developing software.  Your contributions and
158c2ecf20Sopenharmony_ciideas behind them will be carefully reviewed, often resulting in
168c2ecf20Sopenharmony_cicritique and criticism.  The review will almost always require
178c2ecf20Sopenharmony_ciimprovements before the material can be included in the
188c2ecf20Sopenharmony_cikernel.  Know that this happens because everyone involved wants to see
198c2ecf20Sopenharmony_cithe best possible solution for the overall success of Linux.  This
208c2ecf20Sopenharmony_cidevelopment process has been proven to create the most robust operating
218c2ecf20Sopenharmony_cisystem kernel ever, and we do not want to do anything to cause the
228c2ecf20Sopenharmony_ciquality of submission and eventual result to ever decrease.
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ciMaintainers
258c2ecf20Sopenharmony_ci-----------
268c2ecf20Sopenharmony_ci
278c2ecf20Sopenharmony_ciThe Code of Conduct uses the term "maintainers" numerous times.  In the
288c2ecf20Sopenharmony_cikernel community, a "maintainer" is anyone who is responsible for a
298c2ecf20Sopenharmony_cisubsystem, driver, or file, and is listed in the MAINTAINERS file in the
308c2ecf20Sopenharmony_cikernel source tree.
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_ciResponsibilities
338c2ecf20Sopenharmony_ci----------------
348c2ecf20Sopenharmony_ci
358c2ecf20Sopenharmony_ciThe Code of Conduct mentions rights and responsibilities for
368c2ecf20Sopenharmony_cimaintainers, and this needs some further clarifications.
378c2ecf20Sopenharmony_ci
388c2ecf20Sopenharmony_ciFirst and foremost, it is a reasonable expectation to have maintainers
398c2ecf20Sopenharmony_cilead by example.
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ciThat being said, our community is vast and broad, and there is no new
428c2ecf20Sopenharmony_cirequirement for maintainers to unilaterally handle how other people
438c2ecf20Sopenharmony_cibehave in the parts of the community where they are active.  That
448c2ecf20Sopenharmony_ciresponsibility is upon all of us, and ultimately the Code of Conduct
458c2ecf20Sopenharmony_cidocuments final escalation paths in case of unresolved concerns
468c2ecf20Sopenharmony_ciregarding conduct issues.
478c2ecf20Sopenharmony_ci
488c2ecf20Sopenharmony_ciMaintainers should be willing to help when problems occur, and work with
498c2ecf20Sopenharmony_ciothers in the community when needed.  Do not be afraid to reach out to
508c2ecf20Sopenharmony_cithe Technical Advisory Board (TAB) or other maintainers if you're
518c2ecf20Sopenharmony_ciuncertain how to handle situations that come up.  It will not be
528c2ecf20Sopenharmony_ciconsidered a violation report unless you want it to be.  If you are
538c2ecf20Sopenharmony_ciuncertain about approaching the TAB or any other maintainers, please
548c2ecf20Sopenharmony_cireach out to our conflict mediator, Joanna Lee <jlee@linuxfoundation.org>.
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ciIn the end, "be kind to each other" is really what the end goal is for
578c2ecf20Sopenharmony_cieverybody.  We know everyone is human and we all fail at times, but the
588c2ecf20Sopenharmony_ciprimary goal for all of us should be to work toward amicable resolutions
598c2ecf20Sopenharmony_ciof problems.  Enforcement of the code of conduct will only be a last
608c2ecf20Sopenharmony_ciresort option.
618c2ecf20Sopenharmony_ci
628c2ecf20Sopenharmony_ciOur goal of creating a robust and technically advanced operating system
638c2ecf20Sopenharmony_ciand the technical complexity involved naturally require expertise and
648c2ecf20Sopenharmony_cidecision-making.
658c2ecf20Sopenharmony_ci
668c2ecf20Sopenharmony_ciThe required expertise varies depending on the area of contribution.  It
678c2ecf20Sopenharmony_ciis determined mainly by context and technical complexity and only
688c2ecf20Sopenharmony_cisecondary by the expectations of contributors and maintainers.
698c2ecf20Sopenharmony_ci
708c2ecf20Sopenharmony_ciBoth the expertise expectations and decision-making are subject to
718c2ecf20Sopenharmony_cidiscussion, but at the very end there is a basic necessity to be able to
728c2ecf20Sopenharmony_cimake decisions in order to make progress.  This prerogative is in the
738c2ecf20Sopenharmony_cihands of maintainers and project's leadership and is expected to be used
748c2ecf20Sopenharmony_ciin good faith.
758c2ecf20Sopenharmony_ci
768c2ecf20Sopenharmony_ciAs a consequence, setting expertise expectations, making decisions and
778c2ecf20Sopenharmony_cirejecting unsuitable contributions are not viewed as a violation of the
788c2ecf20Sopenharmony_ciCode of Conduct.
798c2ecf20Sopenharmony_ci
808c2ecf20Sopenharmony_ciWhile maintainers are in general welcoming to newcomers, their capacity
818c2ecf20Sopenharmony_ciof helping contributors overcome the entry hurdles is limited, so they
828c2ecf20Sopenharmony_cihave to set priorities.  This, also, is not to be seen as a violation of
838c2ecf20Sopenharmony_cithe Code of Conduct.  The kernel community is aware of that and provides
848c2ecf20Sopenharmony_cientry level programs in various forms like kernelnewbies.org.
858c2ecf20Sopenharmony_ci
868c2ecf20Sopenharmony_ciScope
878c2ecf20Sopenharmony_ci-----
888c2ecf20Sopenharmony_ci
898c2ecf20Sopenharmony_ciThe Linux kernel community primarily interacts on a set of public email
908c2ecf20Sopenharmony_cilists distributed around a number of different servers controlled by a
918c2ecf20Sopenharmony_cinumber of different companies or individuals.  All of these lists are
928c2ecf20Sopenharmony_cidefined in the MAINTAINERS file in the kernel source tree.  Any emails
938c2ecf20Sopenharmony_cisent to those mailing lists are considered covered by the Code of
948c2ecf20Sopenharmony_ciConduct.
958c2ecf20Sopenharmony_ci
968c2ecf20Sopenharmony_ciDevelopers who use the kernel.org bugzilla, and other subsystem bugzilla
978c2ecf20Sopenharmony_cior bug tracking tools should follow the guidelines of the Code of
988c2ecf20Sopenharmony_ciConduct.  The Linux kernel community does not have an "official" project
998c2ecf20Sopenharmony_ciemail address, or "official" social media address.  Any activity
1008c2ecf20Sopenharmony_ciperformed using a kernel.org email account must follow the Code of
1018c2ecf20Sopenharmony_ciConduct as published for kernel.org, just as any individual using a
1028c2ecf20Sopenharmony_cicorporate email account must follow the specific rules of that
1038c2ecf20Sopenharmony_cicorporation.
1048c2ecf20Sopenharmony_ci
1058c2ecf20Sopenharmony_ciThe Code of Conduct does not prohibit continuing to include names, email
1068c2ecf20Sopenharmony_ciaddresses, and associated comments in mailing list messages, kernel
1078c2ecf20Sopenharmony_cichange log messages, or code comments.
1088c2ecf20Sopenharmony_ci
1098c2ecf20Sopenharmony_ciInteraction in other forums is covered by whatever rules apply to said
1108c2ecf20Sopenharmony_ciforums and is in general not covered by the Code of Conduct.  Exceptions
1118c2ecf20Sopenharmony_cimay be considered for extreme circumstances.
1128c2ecf20Sopenharmony_ci
1138c2ecf20Sopenharmony_ciContributions submitted for the kernel should use appropriate language.
1148c2ecf20Sopenharmony_ciContent that already exists predating the Code of Conduct will not be
1158c2ecf20Sopenharmony_ciaddressed now as a violation.  Inappropriate language can be seen as a
1168c2ecf20Sopenharmony_cibug, though; such bugs will be fixed more quickly if any interested
1178c2ecf20Sopenharmony_ciparties submit patches to that effect.  Expressions that are currently
1188c2ecf20Sopenharmony_cipart of the user/kernel API, or reflect terminology used in published
1198c2ecf20Sopenharmony_cistandards or specifications, are not considered bugs.
1208c2ecf20Sopenharmony_ci
1218c2ecf20Sopenharmony_ciEnforcement
1228c2ecf20Sopenharmony_ci-----------
1238c2ecf20Sopenharmony_ci
1248c2ecf20Sopenharmony_ciThe address listed in the Code of Conduct goes to the Code of Conduct
1258c2ecf20Sopenharmony_ciCommittee.  The exact members receiving these emails at any given time
1268c2ecf20Sopenharmony_ciare listed at https://kernel.org/code-of-conduct.html.  Members can not
1278c2ecf20Sopenharmony_ciaccess reports made before they joined or after they have left the
1288c2ecf20Sopenharmony_cicommittee.
1298c2ecf20Sopenharmony_ci
1308c2ecf20Sopenharmony_ciThe initial Code of Conduct Committee consists of volunteer members of
1318c2ecf20Sopenharmony_cithe TAB, as well as a professional mediator acting as a neutral third
1328c2ecf20Sopenharmony_ciparty.  The first task of the committee is to establish documented
1338c2ecf20Sopenharmony_ciprocesses, which will be made public.
1348c2ecf20Sopenharmony_ci
1358c2ecf20Sopenharmony_ciAny member of the committee, including the mediator, can be contacted
1368c2ecf20Sopenharmony_cidirectly if a reporter does not wish to include the full committee in a
1378c2ecf20Sopenharmony_cicomplaint or concern.
1388c2ecf20Sopenharmony_ci
1398c2ecf20Sopenharmony_ciThe Code of Conduct Committee reviews the cases according to the
1408c2ecf20Sopenharmony_ciprocesses (see above) and consults with the TAB as needed and
1418c2ecf20Sopenharmony_ciappropriate, for instance to request and receive information about the
1428c2ecf20Sopenharmony_cikernel community.
1438c2ecf20Sopenharmony_ci
1448c2ecf20Sopenharmony_ciAny decisions by the committee will be brought to the TAB, for
1458c2ecf20Sopenharmony_ciimplementation of enforcement with the relevant maintainers if needed.
1468c2ecf20Sopenharmony_ciA decision by the Code of Conduct Committee can be overturned by the TAB
1478c2ecf20Sopenharmony_ciby a two-thirds vote.
1488c2ecf20Sopenharmony_ci
1498c2ecf20Sopenharmony_ciAt quarterly intervals, the Code of Conduct Committee and TAB will
1508c2ecf20Sopenharmony_ciprovide a report summarizing the anonymised reports that the Code of
1518c2ecf20Sopenharmony_ciConduct committee has received and their status, as well details of any
1528c2ecf20Sopenharmony_cioverridden decisions including complete and identifiable voting details.
1538c2ecf20Sopenharmony_ci
1548c2ecf20Sopenharmony_ciWe expect to establish a different process for Code of Conduct Committee
1558c2ecf20Sopenharmony_cistaffing beyond the bootstrap period.  This document will be updated
1568c2ecf20Sopenharmony_ciwith that information when this occurs.
157