Blame view
Documentation/stable_kernel_rules.txt
6.51 KB
609d99a3b Documentation/HOW... |
1 |
.. _stable_kernel_rules: |
5fe270a47 Documentation/sta... |
2 3 |
Everything you ever wanted to know about Linux -stable releases =============================================================== |
fc185d95e [PATCH] Add the r... |
4 |
|
e48e99093 [PATCH] Docs upda... |
5 6 |
Rules on what kind of patches are accepted, and which ones are not, into the "-stable" tree: |
fc185d95e [PATCH] Add the r... |
7 8 |
- It must be obviously correct and tested. |
84eb8d060 Fix "can not" in ... |
9 |
- It cannot be bigger than 100 lines, with context. |
fc185d95e [PATCH] Add the r... |
10 11 |
- It must fix only one thing. - It must fix a real bug that bothers people (not a, "This could be a |
e48e99093 [PATCH] Docs upda... |
12 |
problem..." type thing). |
fc185d95e [PATCH] Add the r... |
13 14 |
- It must fix a problem that causes a build error (but not for things marked CONFIG_BROKEN), an oops, a hang, data corruption, a real |
e48e99093 [PATCH] Docs upda... |
15 16 |
security issue, or some "oh, that's not good" issue. In short, something critical. |
8191e0d90 stable: Allow mer... |
17 18 19 20 21 22 |
- Serious issues as reported by a user of a distribution kernel may also be considered if they fix a notable performance or interactivity issue. As these fixes are not as obvious and have a higher risk of a subtle regression they should only be submitted by a distribution kernel maintainer and include an addendum linking to a bugzilla entry if it exists and additional information on the user-visible impact. |
79cd80a1d Update stable tre... |
23 |
- New device IDs and quirks are also accepted. |
e48e99093 [PATCH] Docs upda... |
24 25 |
- No "theoretical race condition" issues, unless an explanation of how the race can be exploited is also provided. |
84eb8d060 Fix "can not" in ... |
26 |
- It cannot contain any "trivial" fixes in it (spelling changes, |
e48e99093 [PATCH] Docs upda... |
27 |
whitespace cleanups, etc). |
dca22a63f docs-rst: add int... |
28 29 30 |
- It must follow the :ref:`Documentation/SubmittingPatches <submittingpatches>` rules. |
959fb1c50 Documentation: -s... |
31 |
- It or an equivalent fix must already exist in Linus' tree (upstream). |
fc185d95e [PATCH] Add the r... |
32 |
|
5fe270a47 Documentation/sta... |
33 34 |
Procedure for submitting patches to the -stable tree ---------------------------------------------------- |
fc185d95e [PATCH] Add the r... |
35 |
|
b76fc2853 stable_kernel_rul... |
36 37 38 |
- If the patch covers files in net/ or drivers/net please follow netdev stable submission guidelines as described in Documentation/networking/netdev-FAQ.txt |
5de61e7aa stable_kernel_rul... |
39 |
- Security patches should not be handled (solely) by the -stable review |
dca22a63f docs-rst: add int... |
40 41 |
process but should follow the procedures in :ref:`Documentation/SecurityBugs <securitybugs>`. |
5de61e7aa stable_kernel_rul... |
42 |
|
5fe270a47 Documentation/sta... |
43 44 |
For all other submissions, choose one of the following procedures ----------------------------------------------------------------- |
5de61e7aa stable_kernel_rul... |
45 |
|
5fe270a47 Documentation/sta... |
46 47 48 49 50 51 52 53 |
.. _option_1: Option 1 ******** To have the patch automatically included in the stable tree, add the tag .. code-block:: none |
5de61e7aa stable_kernel_rul... |
54 |
|
5fa224295 Update email addr... |
55 |
Cc: stable@vger.kernel.org |
5de61e7aa stable_kernel_rul... |
56 |
|
5fe270a47 Documentation/sta... |
57 58 59 60 61 |
in the sign-off area. Once the patch is merged it will be applied to the stable tree without anything else needing to be done by the author or subsystem maintainer. .. _option_2: |
5de61e7aa stable_kernel_rul... |
62 |
|
5fe270a47 Documentation/sta... |
63 64 |
Option 2 ******** |
5de61e7aa stable_kernel_rul... |
65 |
|
5fe270a47 Documentation/sta... |
66 67 68 69 |
After the patch has been merged to Linus' tree, send an email to stable@vger.kernel.org containing the subject of the patch, the commit ID, why you think it should be applied, and what kernel version you wish it to be applied to. |
5de61e7aa stable_kernel_rul... |
70 |
|
5fe270a47 Documentation/sta... |
71 |
.. _option_3: |
5de61e7aa stable_kernel_rul... |
72 |
|
5fe270a47 Documentation/sta... |
73 74 |
Option 3 ******** |
bde1b2942 stable: Update do... |
75 |
|
5fe270a47 Documentation/sta... |
76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
Send the patch, after verifying that it follows the above rules, to stable@vger.kernel.org. You must note the upstream commit ID in the changelog of your submission, as well as the kernel version you wish it to be applied to. :ref:`option_1` is **strongly** preferred, is the easiest and most common. :ref:`option_2` and :ref:`option_3` are more useful if the patch isn't deemed worthy at the time it is applied to a public git tree (for instance, because it deserves more regression testing first). :ref:`option_3` is especially useful if the patch needs some special handling to apply to an older kernel (e.g., if API's have changed in the meantime). Note that for :ref:`option_3`, if the patch deviates from the original upstream patch (for example because it had to be backported) this must be very clearly documented and justified in the patch description. |
bde1b2942 stable: Update do... |
91 92 93 |
The upstream commit ID must be specified with a separate line above the commit text, like this: |
5fe270a47 Documentation/sta... |
94 |
.. code-block:: none |
bde1b2942 stable: Update do... |
95 |
commit <sha1> upstream. |
5de61e7aa stable_kernel_rul... |
96 97 98 99 |
Additionally, some patches submitted via Option 1 may have additional patch prerequisites which can be cherry-picked. This can be specified in the following format in the sign-off area: |
8e9b93622 Doc/stable rules:... |
100 |
|
5fe270a47 Documentation/sta... |
101 |
.. code-block:: none |
2584f5212 stable: update re... |
102 103 104 105 |
Cc: <stable@vger.kernel.org> # 3.3.x: a1f84a3: sched: Check for idle Cc: <stable@vger.kernel.org> # 3.3.x: 1b9508f: sched: Rate-limit newidle Cc: <stable@vger.kernel.org> # 3.3.x: fd21073: sched: Fix affinity logic Cc: <stable@vger.kernel.org> # 3.3.x |
5fe270a47 Documentation/sta... |
106 107 108 109 110 |
Signed-off-by: Ingo Molnar <mingo@elte.hu> The tag sequence has the meaning of: .. code-block:: none |
8e9b93622 Doc/stable rules:... |
111 |
|
8e9b93622 Doc/stable rules:... |
112 113 114 115 |
git cherry-pick a1f84a3 git cherry-pick 1b9508f git cherry-pick fd21073 git cherry-pick <this commit> |
fdc81b791 stable_kernel_rul... |
116 117 |
Also, some patches may have kernel version prerequisites. This can be specified in the following format in the sign-off area: |
5fe270a47 Documentation/sta... |
118 |
.. code-block:: none |
f902493a6 stable_kernel_rul... |
119 |
Cc: <stable@vger.kernel.org> # 3.3.x- |
fdc81b791 stable_kernel_rul... |
120 |
|
5fe270a47 Documentation/sta... |
121 122 123 |
The tag has the meaning of: .. code-block:: none |
fdc81b791 stable_kernel_rul... |
124 |
git cherry-pick <this commit> |
5fe270a47 Documentation/sta... |
125 |
For each "-stable" tree starting with the specified version. |
fdc81b791 stable_kernel_rul... |
126 |
|
5de61e7aa stable_kernel_rul... |
127 |
Following the submission: |
e48e99093 [PATCH] Docs upda... |
128 129 130 131 |
- The sender will receive an ACK when the patch has been accepted into the queue, or a NAK if the patch is rejected. This response might take a few days, according to the developer's schedules. - If accepted, the patch will be added to the -stable queue, for review by |
46cdf871d stable_kernel_rul... |
132 |
other developers and by the relevant subsystem maintainer. |
fc185d95e [PATCH] Add the r... |
133 |
|
5fe270a47 Documentation/sta... |
134 135 |
Review cycle ------------ |
fc185d95e [PATCH] Add the r... |
136 |
|
e48e99093 [PATCH] Docs upda... |
137 138 139 140 141 |
- When the -stable maintainers decide for a review cycle, the patches will be sent to the review committee, and the maintainer of the affected area of the patch (unless the submitter is the maintainer of the area) and CC: to the linux-kernel mailing list. - The review committee has 48 hours in which to ACK or NAK the patch. |
fc185d95e [PATCH] Add the r... |
142 |
- If the patch is rejected by a member of the committee, or linux-kernel |
e48e99093 [PATCH] Docs upda... |
143 144 145 146 147 148 |
members object to the patch, bringing up issues that the maintainers and members did not realize, the patch will be dropped from the queue. - At the end of the review cycle, the ACKed patches will be added to the latest -stable release, and a new -stable release will happen. - Security patches will be accepted into the -stable tree directly from the security kernel team, and not go through the normal review cycle. |
fc185d95e [PATCH] Add the r... |
149 |
Contact the kernel security team for more details on this procedure. |
5fe270a47 Documentation/sta... |
150 151 |
Trees ----- |
2584f5212 stable: update re... |
152 153 154 |
- The queues of patches, for both completed versions and in progress versions can be found at: |
5fe270a47 Documentation/sta... |
155 |
|
2584f5212 stable: update re... |
156 |
http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git |
5fe270a47 Documentation/sta... |
157 |
|
2584f5212 stable: update re... |
158 159 |
- The finalized and tagged releases of all stable kernels can be found in separate branches per version at: |
5fe270a47 Documentation/sta... |
160 |
|
2584f5212 stable: update re... |
161 |
http://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git |
fc185d95e [PATCH] Add the r... |
162 |
|
5fe270a47 Documentation/sta... |
163 164 |
Review committee ---------------- |
fc185d95e [PATCH] Add the r... |
165 |
|
e48e99093 [PATCH] Docs upda... |
166 167 |
- This is made up of a number of kernel developers who have volunteered for this task, and a few that haven't. |