1*4882a593Smuzhiyun.. _code_of_conduct_interpretation: 2*4882a593Smuzhiyun 3*4882a593SmuzhiyunLinux Kernel Contributor Covenant Code of Conduct Interpretation 4*4882a593Smuzhiyun================================================================ 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunThe :ref:`code_of_conduct` is a general document meant to 7*4882a593Smuzhiyunprovide a set of rules for almost any open source community. Every 8*4882a593Smuzhiyunopen-source community is unique and the Linux kernel is no exception. 9*4882a593SmuzhiyunBecause of this, this document describes how we in the Linux kernel 10*4882a593Smuzhiyuncommunity will interpret it. We also do not expect this interpretation 11*4882a593Smuzhiyunto be static over time, and will adjust it as needed. 12*4882a593Smuzhiyun 13*4882a593SmuzhiyunThe Linux kernel development effort is a very personal process compared 14*4882a593Smuzhiyunto "traditional" ways of developing software. Your contributions and 15*4882a593Smuzhiyunideas behind them will be carefully reviewed, often resulting in 16*4882a593Smuzhiyuncritique and criticism. The review will almost always require 17*4882a593Smuzhiyunimprovements before the material can be included in the 18*4882a593Smuzhiyunkernel. Know that this happens because everyone involved wants to see 19*4882a593Smuzhiyunthe best possible solution for the overall success of Linux. This 20*4882a593Smuzhiyundevelopment process has been proven to create the most robust operating 21*4882a593Smuzhiyunsystem kernel ever, and we do not want to do anything to cause the 22*4882a593Smuzhiyunquality of submission and eventual result to ever decrease. 23*4882a593Smuzhiyun 24*4882a593SmuzhiyunMaintainers 25*4882a593Smuzhiyun----------- 26*4882a593Smuzhiyun 27*4882a593SmuzhiyunThe Code of Conduct uses the term "maintainers" numerous times. In the 28*4882a593Smuzhiyunkernel community, a "maintainer" is anyone who is responsible for a 29*4882a593Smuzhiyunsubsystem, driver, or file, and is listed in the MAINTAINERS file in the 30*4882a593Smuzhiyunkernel source tree. 31*4882a593Smuzhiyun 32*4882a593SmuzhiyunResponsibilities 33*4882a593Smuzhiyun---------------- 34*4882a593Smuzhiyun 35*4882a593SmuzhiyunThe Code of Conduct mentions rights and responsibilities for 36*4882a593Smuzhiyunmaintainers, and this needs some further clarifications. 37*4882a593Smuzhiyun 38*4882a593SmuzhiyunFirst and foremost, it is a reasonable expectation to have maintainers 39*4882a593Smuzhiyunlead by example. 40*4882a593Smuzhiyun 41*4882a593SmuzhiyunThat being said, our community is vast and broad, and there is no new 42*4882a593Smuzhiyunrequirement for maintainers to unilaterally handle how other people 43*4882a593Smuzhiyunbehave in the parts of the community where they are active. That 44*4882a593Smuzhiyunresponsibility is upon all of us, and ultimately the Code of Conduct 45*4882a593Smuzhiyundocuments final escalation paths in case of unresolved concerns 46*4882a593Smuzhiyunregarding conduct issues. 47*4882a593Smuzhiyun 48*4882a593SmuzhiyunMaintainers should be willing to help when problems occur, and work with 49*4882a593Smuzhiyunothers in the community when needed. Do not be afraid to reach out to 50*4882a593Smuzhiyunthe Technical Advisory Board (TAB) or other maintainers if you're 51*4882a593Smuzhiyununcertain how to handle situations that come up. It will not be 52*4882a593Smuzhiyunconsidered a violation report unless you want it to be. If you are 53*4882a593Smuzhiyununcertain about approaching the TAB or any other maintainers, please 54*4882a593Smuzhiyunreach out to our conflict mediator, Joanna Lee <jlee@linuxfoundation.org>. 55*4882a593Smuzhiyun 56*4882a593SmuzhiyunIn the end, "be kind to each other" is really what the end goal is for 57*4882a593Smuzhiyuneverybody. We know everyone is human and we all fail at times, but the 58*4882a593Smuzhiyunprimary goal for all of us should be to work toward amicable resolutions 59*4882a593Smuzhiyunof problems. Enforcement of the code of conduct will only be a last 60*4882a593Smuzhiyunresort option. 61*4882a593Smuzhiyun 62*4882a593SmuzhiyunOur goal of creating a robust and technically advanced operating system 63*4882a593Smuzhiyunand the technical complexity involved naturally require expertise and 64*4882a593Smuzhiyundecision-making. 65*4882a593Smuzhiyun 66*4882a593SmuzhiyunThe required expertise varies depending on the area of contribution. It 67*4882a593Smuzhiyunis determined mainly by context and technical complexity and only 68*4882a593Smuzhiyunsecondary by the expectations of contributors and maintainers. 69*4882a593Smuzhiyun 70*4882a593SmuzhiyunBoth the expertise expectations and decision-making are subject to 71*4882a593Smuzhiyundiscussion, but at the very end there is a basic necessity to be able to 72*4882a593Smuzhiyunmake decisions in order to make progress. This prerogative is in the 73*4882a593Smuzhiyunhands of maintainers and project's leadership and is expected to be used 74*4882a593Smuzhiyunin good faith. 75*4882a593Smuzhiyun 76*4882a593SmuzhiyunAs a consequence, setting expertise expectations, making decisions and 77*4882a593Smuzhiyunrejecting unsuitable contributions are not viewed as a violation of the 78*4882a593SmuzhiyunCode of Conduct. 79*4882a593Smuzhiyun 80*4882a593SmuzhiyunWhile maintainers are in general welcoming to newcomers, their capacity 81*4882a593Smuzhiyunof helping contributors overcome the entry hurdles is limited, so they 82*4882a593Smuzhiyunhave to set priorities. This, also, is not to be seen as a violation of 83*4882a593Smuzhiyunthe Code of Conduct. The kernel community is aware of that and provides 84*4882a593Smuzhiyunentry level programs in various forms like kernelnewbies.org. 85*4882a593Smuzhiyun 86*4882a593SmuzhiyunScope 87*4882a593Smuzhiyun----- 88*4882a593Smuzhiyun 89*4882a593SmuzhiyunThe Linux kernel community primarily interacts on a set of public email 90*4882a593Smuzhiyunlists distributed around a number of different servers controlled by a 91*4882a593Smuzhiyunnumber of different companies or individuals. All of these lists are 92*4882a593Smuzhiyundefined in the MAINTAINERS file in the kernel source tree. Any emails 93*4882a593Smuzhiyunsent to those mailing lists are considered covered by the Code of 94*4882a593SmuzhiyunConduct. 95*4882a593Smuzhiyun 96*4882a593SmuzhiyunDevelopers who use the kernel.org bugzilla, and other subsystem bugzilla 97*4882a593Smuzhiyunor bug tracking tools should follow the guidelines of the Code of 98*4882a593SmuzhiyunConduct. The Linux kernel community does not have an "official" project 99*4882a593Smuzhiyunemail address, or "official" social media address. Any activity 100*4882a593Smuzhiyunperformed using a kernel.org email account must follow the Code of 101*4882a593SmuzhiyunConduct as published for kernel.org, just as any individual using a 102*4882a593Smuzhiyuncorporate email account must follow the specific rules of that 103*4882a593Smuzhiyuncorporation. 104*4882a593Smuzhiyun 105*4882a593SmuzhiyunThe Code of Conduct does not prohibit continuing to include names, email 106*4882a593Smuzhiyunaddresses, and associated comments in mailing list messages, kernel 107*4882a593Smuzhiyunchange log messages, or code comments. 108*4882a593Smuzhiyun 109*4882a593SmuzhiyunInteraction in other forums is covered by whatever rules apply to said 110*4882a593Smuzhiyunforums and is in general not covered by the Code of Conduct. Exceptions 111*4882a593Smuzhiyunmay be considered for extreme circumstances. 112*4882a593Smuzhiyun 113*4882a593SmuzhiyunContributions submitted for the kernel should use appropriate language. 114*4882a593SmuzhiyunContent that already exists predating the Code of Conduct will not be 115*4882a593Smuzhiyunaddressed now as a violation. Inappropriate language can be seen as a 116*4882a593Smuzhiyunbug, though; such bugs will be fixed more quickly if any interested 117*4882a593Smuzhiyunparties submit patches to that effect. Expressions that are currently 118*4882a593Smuzhiyunpart of the user/kernel API, or reflect terminology used in published 119*4882a593Smuzhiyunstandards or specifications, are not considered bugs. 120*4882a593Smuzhiyun 121*4882a593SmuzhiyunEnforcement 122*4882a593Smuzhiyun----------- 123*4882a593Smuzhiyun 124*4882a593SmuzhiyunThe address listed in the Code of Conduct goes to the Code of Conduct 125*4882a593SmuzhiyunCommittee. The exact members receiving these emails at any given time 126*4882a593Smuzhiyunare listed at https://kernel.org/code-of-conduct.html. Members can not 127*4882a593Smuzhiyunaccess reports made before they joined or after they have left the 128*4882a593Smuzhiyuncommittee. 129*4882a593Smuzhiyun 130*4882a593SmuzhiyunThe initial Code of Conduct Committee consists of volunteer members of 131*4882a593Smuzhiyunthe TAB, as well as a professional mediator acting as a neutral third 132*4882a593Smuzhiyunparty. The first task of the committee is to establish documented 133*4882a593Smuzhiyunprocesses, which will be made public. 134*4882a593Smuzhiyun 135*4882a593SmuzhiyunAny member of the committee, including the mediator, can be contacted 136*4882a593Smuzhiyundirectly if a reporter does not wish to include the full committee in a 137*4882a593Smuzhiyuncomplaint or concern. 138*4882a593Smuzhiyun 139*4882a593SmuzhiyunThe Code of Conduct Committee reviews the cases according to the 140*4882a593Smuzhiyunprocesses (see above) and consults with the TAB as needed and 141*4882a593Smuzhiyunappropriate, for instance to request and receive information about the 142*4882a593Smuzhiyunkernel community. 143*4882a593Smuzhiyun 144*4882a593SmuzhiyunAny decisions by the committee will be brought to the TAB, for 145*4882a593Smuzhiyunimplementation of enforcement with the relevant maintainers if needed. 146*4882a593SmuzhiyunA decision by the Code of Conduct Committee can be overturned by the TAB 147*4882a593Smuzhiyunby a two-thirds vote. 148*4882a593Smuzhiyun 149*4882a593SmuzhiyunAt quarterly intervals, the Code of Conduct Committee and TAB will 150*4882a593Smuzhiyunprovide a report summarizing the anonymised reports that the Code of 151*4882a593SmuzhiyunConduct committee has received and their status, as well details of any 152*4882a593Smuzhiyunoverridden decisions including complete and identifiable voting details. 153*4882a593Smuzhiyun 154*4882a593SmuzhiyunWe expect to establish a different process for Code of Conduct Committee 155*4882a593Smuzhiyunstaffing beyond the bootstrap period. This document will be updated 156*4882a593Smuzhiyunwith that information when this occurs. 157