| .. _code_of_conduct_interpretation: | |
| Linux Kernel Contributor Covenant Code of Conduct Interpretation | |
| ================================================================ | |
| The :ref:`code_of_conduct` is a general document meant to | |
| provide a set of rules for almost any open source community. Every | |
| open-source community is unique and the Linux kernel is no exception. | |
| Because of this, this document describes how we in the Linux kernel | |
| community will interpret it. We also do not expect this interpretation | |
| to be static over time, and will adjust it as needed. | |
| The Linux kernel development effort is a very personal process compared | |
| to "traditional" ways of developing software. Your contributions and | |
| ideas behind them will be carefully reviewed, often resulting in | |
| critique and criticism. The review will almost always require | |
| improvements before the material can be included in the | |
| kernel. Know that this happens because everyone involved wants to see | |
| the best possible solution for the overall success of Linux. This | |
| development process has been proven to create the most robust operating | |
| system kernel ever, and we do not want to do anything to cause the | |
| quality of submission and eventual result to ever decrease. | |
| Maintainers | |
| ----------- | |
| The Code of Conduct uses the term "maintainers" numerous times. In the | |
| kernel community, a "maintainer" is anyone who is responsible for a | |
| subsystem, driver, or file, and is listed in the MAINTAINERS file in the | |
| kernel source tree. | |
| Responsibilities | |
| ---------------- | |
| The Code of Conduct mentions rights and responsibilities for | |
| maintainers, and this needs some further clarifications. | |
| First and foremost, it is a reasonable expectation to have maintainers | |
| lead by example. | |
| That being said, our community is vast and broad, and there is no new | |
| requirement for maintainers to unilaterally handle how other people | |
| behave in the parts of the community where they are active. That | |
| responsibility is upon all of us, and ultimately the Code of Conduct | |
| documents final escalation paths in case of unresolved concerns | |
| regarding conduct issues. | |
| Maintainers should be willing to help when problems occur, and work with | |
| others in the community when needed. Do not be afraid to reach out to | |
| the Technical Advisory Board (TAB) or other maintainers if you're | |
| uncertain how to handle situations that come up. It will not be | |
| considered a violation report unless you want it to be. If you are | |
| uncertain about approaching the TAB or any other maintainers, please | |
| reach out to our conflict mediator, Joanna Lee <jlee@linuxfoundation.org>. | |
| In the end, "be kind to each other" is really what the end goal is for | |
| everybody. We know everyone is human and we all fail at times, but the | |
| primary goal for all of us should be to work toward amicable resolutions | |
| of problems. Enforcement of the code of conduct will only be a last | |
| resort option. | |
| Our goal of creating a robust and technically advanced operating system | |
| and the technical complexity involved naturally require expertise and | |
| decision-making. | |
| The required expertise varies depending on the area of contribution. It | |
| is determined mainly by context and technical complexity and only | |
| secondary by the expectations of contributors and maintainers. | |
| Both the expertise expectations and decision-making are subject to | |
| discussion, but at the very end there is a basic necessity to be able to | |
| make decisions in order to make progress. This prerogative is in the | |
| hands of maintainers and project's leadership and is expected to be used | |
| in good faith. | |
| As a consequence, setting expertise expectations, making decisions and | |
| rejecting unsuitable contributions are not viewed as a violation of the | |
| Code of Conduct. | |
| While maintainers are in general welcoming to newcomers, their capacity | |
| of helping contributors overcome the entry hurdles is limited, so they | |
| have to set priorities. This, also, is not to be seen as a violation of | |
| the Code of Conduct. The kernel community is aware of that and provides | |
| entry level programs in various forms like kernelnewbies.org. | |
| Scope | |
| ----- | |
| The Linux kernel community primarily interacts on a set of public email | |
| lists distributed around a number of different servers controlled by a | |
| number of different companies or individuals. All of these lists are | |
| defined in the MAINTAINERS file in the kernel source tree. Any emails | |
| sent to those mailing lists are considered covered by the Code of | |
| Conduct. | |
| Developers who use the kernel.org bugzilla, and other subsystem bugzilla | |
| or bug tracking tools should follow the guidelines of the Code of | |
| Conduct. The Linux kernel community does not have an "official" project | |
| email address, or "official" social media address. Any activity | |
| performed using a kernel.org email account must follow the Code of | |
| Conduct as published for kernel.org, just as any individual using a | |
| corporate email account must follow the specific rules of that | |
| corporation. | |
| The Code of Conduct does not prohibit continuing to include names, email | |
| addresses, and associated comments in mailing list messages, kernel | |
| change log messages, or code comments. | |
| Interaction in other forums is covered by whatever rules apply to said | |
| forums and is in general not covered by the Code of Conduct. Exceptions | |
| may be considered for extreme circumstances. | |
| Contributions submitted for the kernel should use appropriate language. | |
| Content that already exists predating the Code of Conduct will not be | |
| addressed now as a violation. Inappropriate language can be seen as a | |
| bug, though; such bugs will be fixed more quickly if any interested | |
| parties submit patches to that effect. Expressions that are currently | |
| part of the user/kernel API, or reflect terminology used in published | |
| standards or specifications, are not considered bugs. | |
| Enforcement | |
| ----------- | |
| The address listed in the Code of Conduct goes to the Code of Conduct | |
| Committee. The exact members receiving these emails at any given time | |
| are listed at https://kernel.org/code-of-conduct.html. Members can not | |
| access reports made before they joined or after they have left the | |
| committee. | |
| The Code of Conduct Committee consists of volunteer community members | |
| appointed by the TAB, as well as a professional mediator acting as a | |
| neutral third party. The processes the Code of Conduct committee will | |
| use to address reports is varied and will depend on the individual | |
| circumstance, however, this file serves as documentation for the | |
| general process used. | |
| Any member of the committee, including the mediator, can be contacted | |
| directly if a reporter does not wish to include the full committee in a | |
| complaint or concern. | |
| The Code of Conduct Committee reviews the cases according to the | |
| processes (see above) and consults with the TAB as needed and | |
| appropriate, for instance to request and receive information about the | |
| kernel community. | |
| Any decisions regarding enforcement recommendations will be brought to | |
| the TAB for implementation of enforcement with the relevant maintainers | |
| if needed. Once the TAB approves one or more of the measures outlined | |
| in the scope of the ban by two-thirds of the members voting for the | |
| measures, the Code of Conduct Committee will enforce the TAB approved | |
| measures. Any Code of Conduct Committee members serving on the TAB will | |
| not vote on the measures. | |
| At quarterly intervals, the Code of Conduct Committee and TAB will | |
| provide a report summarizing the anonymised reports that the Code of | |
| Conduct committee has received and their status, as well details of any | |
| TAB approved decisions including complete and identifiable voting details. | |
| Because how we interpret and enforce the Code of Conduct will evolve over | |
| time, this document will be updated when necessary to reflect any | |
| changes. | |
| Enforcement for Unacceptable Behavior Code of Conduct Violations | |
| ---------------------------------------------------------------- | |
| The Code of Conduct committee works to ensure that our community continues | |
| to be inclusive and fosters diverse discussions and viewpoints, and works | |
| to improve those characteristics over time. A majority of the reports the | |
| Code of Conduct Committee receives stem from incorrect understanding regarding | |
| the development process and maintainers' roles, responsibilities, and their | |
| right to make decisions on code acceptance. These are resolved through | |
| clarification of the development process and the scope of the Code of Conduct. | |
| Unacceptable behaviors could interrupt respectful collaboration for a short | |
| period of time and negatively impact the health of the community longer term. | |
| Unacceptable behaviors often get resolved when individuals acknowledge their | |
| behavior and make amends for it in the setting the violation has taken place. | |
| The Code of Conduct Committee receives reports about unacceptable behaviors | |
| when they don't get resolved through community discussions. The Code of | |
| Conduct committee takes measures to restore productive and respectful | |
| collaboration when an unacceptable behavior has negatively impacted that | |
| relationship. | |
| The Code of Conduct Committee has the obligation to keep the reports and | |
| reporters' information private. Reports could come from injured parties | |
| and community members who are observers of unacceptable behaviors. The | |
| Code of Conduct Committee has the responsibility to investigate and resolve | |
| these reports, working with all involved parties. | |
| The Code of Conduct Committee works with the individual to bring about | |
| change in their understanding of the importance to repair the damage caused | |
| by their behavior to the injured party and the long term negative impact | |
| on the community. | |
| The goal is to reach a resolution which is agreeable to all parties. If | |
| working with the individual fails to bring about the desired outcome, the | |
| Code of Conduct Committee will evaluate other measures such as seeking | |
| public apology to repair the damage. | |
| Seek public apology for the violation | |
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
| The Code of Conduct Committee publicly calls out the behavior in the | |
| setting in which the violation has taken place, seeking public apology | |
| for the violation. | |
| A public apology for the violation is the first step towards rebuilding | |
| the trust. Trust is essential for the continued success and health of the | |
| community which operates on trust and respect. | |
| Remedial measures if there is no public apology for the violation | |
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
| The Code of Conduct Committee determines the next course of action to restore | |
| the healthy collaboration by recommending remedial measure(s) to the TAB for | |
| approval. | |
| - Ban violator from participating in the kernel development process for | |
| a period of up to a full kernel development cycle. The Code of Conduct | |
| Committee could require public apology as a condition for lifting the | |
| ban. | |
| The scope of the ban for a period of time could include: | |
| a. denying patch contributions and pull requests | |
| b. pausing collaboration with the violator by ignoring their | |
| contributions and/or blocking their email account(s) | |
| c. restricting their ability to communicate via kernel.org platforms, | |
| such as mailing lists and social media sites | |
| Once the TAB approves one or more of the measures outlined in the scope of | |
| the ban by two-thirds of the members voting for the measures, the Code of | |
| Conduct Committee will enforce the TAB approved measure(s) in collaboration | |
| with the community, maintainers, sub-maintainers, and kernel.org | |
| administrators. Any Code of Conduct Committee members serving on the TAB | |
| will not vote on the measures. | |
| The Code of Conduct Committee is mindful of the negative impact of seeking | |
| public apology and instituting ban could have on individuals. It is also | |
| mindful of the longer term harm to the community that could result from | |
| not taking action when such serious public violations occur. | |
| The effectiveness of the remedial measure(s) approved by the TAB depends | |
| on the trust and cooperation from the community, maintainers, sub-maintainers, | |
| and kernel.org administrators in enforcing them. | |
| The Code of Conduct Committee sincerely hopes that unacceptable behaviors | |
| that require seeking public apologies continue to be exceedingly rare | |
| occurrences in the future. |