Blame view

Documentation/stable_kernel_rules.txt 6.05 KB
2584f5212   Paul Gortmaker   stable: update re...
1
  Everything you ever wanted to know about Linux -stable releases.
fc185d95e   Greg Kroah-Hartman   [PATCH] Add the r...
2

e48e99093   Jesper Juhl   [PATCH] Docs upda...
3
4
  Rules on what kind of patches are accepted, and which ones are not, into the
  "-stable" tree:
fc185d95e   Greg Kroah-Hartman   [PATCH] Add the r...
5
6
  
   - It must be obviously correct and tested.
84eb8d060   Matt LaPlante   Fix "can not" in ...
7
   - It cannot be bigger than 100 lines, with context.
fc185d95e   Greg Kroah-Hartman   [PATCH] Add the r...
8
9
   - It must fix only one thing.
   - It must fix a real bug that bothers people (not a, "This could be a
e48e99093   Jesper Juhl   [PATCH] Docs upda...
10
     problem..." type thing).
fc185d95e   Greg Kroah-Hartman   [PATCH] Add the r...
11
12
   - 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   Jesper Juhl   [PATCH] Docs upda...
13
14
     security issue, or some "oh, that's not good" issue.  In short, something
     critical.
8191e0d90   Mel Gorman   stable: Allow mer...
15
16
17
18
19
20
   - 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   Josh Boyer   Update stable tre...
21
   - New device IDs and quirks are also accepted.
e48e99093   Jesper Juhl   [PATCH] Docs upda...
22
23
   - No "theoretical race condition" issues, unless an explanation of how the
     race can be exploited is also provided.
84eb8d060   Matt LaPlante   Fix "can not" in ...
24
   - It cannot contain any "trivial" fixes in it (spelling changes,
e48e99093   Jesper Juhl   [PATCH] Docs upda...
25
     whitespace cleanups, etc).
e48e99093   Jesper Juhl   [PATCH] Docs upda...
26
   - It must follow the Documentation/SubmittingPatches rules.
959fb1c50   Stefan Richter   Documentation: -s...
27
   - It or an equivalent fix must already exist in Linus' tree (upstream).
fc185d95e   Greg Kroah-Hartman   [PATCH] Add the r...
28
29
30
  
  
  Procedure for submitting patches to the -stable tree:
b76fc2853   Dave Chiluk   stable_kernel_rul...
31
32
33
   - 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   Brian Norris   stable_kernel_rul...
34
35
36
37
38
39
40
41
   - Security patches should not be handled (solely) by the -stable review
     process but should follow the procedures in Documentation/SecurityBugs.
  
  For all other submissions, choose one of the following procedures:
  
     --- Option 1 ---
  
     To have the patch automatically included in the stable tree, add the tag
5fa224295   Josh Boyer   Update email addr...
42
       Cc: stable@vger.kernel.org
8e9b93622   Sebastian Andrzej Siewior   Doc/stable rules:...
43
44
45
     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.
5de61e7aa   Brian Norris   stable_kernel_rul...
46
47
48
49
50
51
52
53
54
55
56
57
58
59
  
     --- Option 2 ---
  
     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.
  
     --- Option 3 ---
  
     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.
bde1b2942   Christoffer Dall   stable: Update do...
60
61
62
63
64
65
66
67
68
69
70
71
72
73
  Option 1 is *strongly* preferred, is the easiest and most common.  Options 2 and
  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).  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 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.
  
  The upstream commit ID must be specified with a separate line above the commit
  text, like this:
  
      commit <sha1> upstream.
5de61e7aa   Brian Norris   stable_kernel_rul...
74
75
76
77
  
  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   Sebastian Andrzej Siewior   Doc/stable rules:...
78

2584f5212   Paul Gortmaker   stable: update re...
79
80
81
82
       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
8e9b93622   Sebastian Andrzej Siewior   Doc/stable rules:...
83
84
85
86
87
88
89
      Signed-off-by: Ingo Molnar <mingo@elte.hu>
  
     The tag sequence has the meaning of:
       git cherry-pick a1f84a3
       git cherry-pick 1b9508f
       git cherry-pick fd21073
       git cherry-pick <this commit>
fdc81b791   David Daney   stable_kernel_rul...
90
91
  Also, some patches may have kernel version prerequisites.  This can be
  specified in the following format in the sign-off area:
f902493a6   Richard Weinberger   stable_kernel_rul...
92
       Cc: <stable@vger.kernel.org> # 3.3.x-
fdc81b791   David Daney   stable_kernel_rul...
93
94
95
96
97
  
     The tag has the meaning of:
       git cherry-pick <this commit>
  
     For each "-stable" tree starting with the specified version.
5de61e7aa   Brian Norris   stable_kernel_rul...
98
  Following the submission:
e48e99093   Jesper Juhl   [PATCH] Docs upda...
99
100
101
102
   - 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   Stefan Richter   stable_kernel_rul...
103
     other developers and by the relevant subsystem maintainer.
fc185d95e   Greg Kroah-Hartman   [PATCH] Add the r...
104
105
106
  
  
  Review cycle:
e48e99093   Jesper Juhl   [PATCH] Docs upda...
107
108
109
110
111
   - 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   Greg Kroah-Hartman   [PATCH] Add the r...
112
   - If the patch is rejected by a member of the committee, or linux-kernel
e48e99093   Jesper Juhl   [PATCH] Docs upda...
113
114
115
116
117
118
     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   Greg Kroah-Hartman   [PATCH] Add the r...
119
     Contact the kernel security team for more details on this procedure.
2584f5212   Paul Gortmaker   stable: update re...
120
121
122
123
124
125
126
127
  Trees:
  
   - The queues of patches, for both completed versions and in progress
     versions can be found at:
  	http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git
   - The finalized and tagged releases of all stable kernels can be found
     in separate branches per version at:
  	http://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git
fc185d95e   Greg Kroah-Hartman   [PATCH] Add the r...
128

5d3f083d8   Matt LaPlante   Fix typos in /Doc...
129
  Review committee:
fc185d95e   Greg Kroah-Hartman   [PATCH] Add the r...
130

e48e99093   Jesper Juhl   [PATCH] Docs upda...
131
132
   - This is made up of a number of kernel developers who have volunteered for
     this task, and a few that haven't.