Tout ce que vous avez toujours voulu savoir sur les versions stables de Linux (2/2)

https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html


Everything you ever wanted to know about Linux -stable releases

For all other submissions, choose one of the following procedures

Pour toutes les autres soumissions, sélectionnez l'une des étapes ci-dessous.

Option 1

To have the patch automatically included in the stable tree, add the tag Cc: stable at vger.kernel.org in the sign-off area.

Pour inclure automatiquement les correctifs dans l'arborescence stable, ajoutez Cc: stable at vger.kernel.org à la balise de la zone de déconnexion.

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.

Une fois le patch fusionné, l'auteur et le responsable du sous-système n'ont plus rien à faire et cela s'applique également à l'arbre stabke.

Option 2

After the patch has been merged to Linus’tree, send an email to stable at 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.

Une fois le correctif fusionné dans l'arborescence de Linus, le fichier stable at vger.kernel.org devrait inclure le sujet, l'ID de validation du correctif, pourquoi vous pensiez qu'il devrait être appliqué et pourquoi il devrait être appliqué à cette version du noyau. S'il vous plait, envoyez-moi un email.

Option 3

Send the patch, after verifying that it follows the above rules, to stable at 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.

Une fois que vous avez vérifié que vous suivez les règles ci-dessus, envoyez un correctif à stable at vget.kernel.org. Assurez-vous d'inclure l'ID de validation en amont du journal des modifications pour le correctif et la version du noyau que vous essayez d'appliquer.


Option 1 is strongly preferred, is the easiest and most common. Option 2 and 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). 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).

L'option 1 est fortement recommandée. C'est le plus simple et le plus courant. Les options 2 et 3 sont plus utiles lorsque le correctif est considéré comme sans valeur lorsqu'il est appliqué à un arbre git public (par exemple, parce qu'il mérite plus de tests de régression au début). L'option 3 est particulièrement utile si le patch nécessite beaucoup de traitement spécial pour les noyaux plus anciens (par exemple, si l'API a changé).

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.

L'option 3 exige que si le correctif s'écarte du correctif amont d'origine (par exemple, s'il est rétroporté), il doit être clairement documenté et justifié dans la description du correctif.

The upstream commit ID must be specified with a separate line above the commit text, like this:

L'ID de validation en amont doit être écrit sur une ligne distincte dans le texte de validation. Par exemple ::

commit <sha1> upstream.

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:

De plus, certains correctifs envoyés avec l'option 1 peuvent avoir des correctifs supplémentaires qui sont sélectionnés et requis à l'avance. La description décrite dans la zone de validation est la suivante.

Cc: <stable at vger.kernel.org> # 3.3.x: a1f84a3: sched: Check for idle
Cc: <stable at vger.kernel.org> # 3.3.x: 1b9508f: sched: Rate-limit newidle
Cc: <stable at vger.kernel.org> # 3.3.x: fd21073: sched: Fix affinity logic
Cc: <stable at vger.kernel.org> # 3.3.x
Signed-off-by: Ingo Molnar <mingo at elte.hu>

The tag sequence has the meaning of:

La séquence d'étiquettes a les significations suivantes.

git cherry-pick a1f84a3
git cherry-pick 1b9508f
git cherry-pick fd21073
git cherry-pick <this commit>

Also, some patches may have kernel version prerequisites. This can be specified in the following format in the sign-off area:

De plus, certains correctifs nécessitent une version du noyau. Dans ce cas, écrivez ce qui suit dans la zone d'approbation.

Cc: <stable at vger.kernel.org> # 3.3.x

The tag has the meaning of:

La signification de cette balise est la suivante.

git cherry-pick <this commit>

For each “-stable” tree starting with the specified version.

Chaque arbre "-stable" depuis la version spécifiée.

Following the submission:

  • 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.

Review cycle

  • 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.

--- Si les mainteneurs stables déterminent que le cycle de révision, le patch sera envoyé avec le comité de révision, le responsable de la zone liée au patch (même si le soumissionnaire est le responsable de la zone), et le CC avec la liste de diffusion linux-kernel. Je vais.

  • 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.

Trees

  • The queues of patches, for both completed versions and in progress versions can be found at: https://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git

Review committee

  • This is made up of a number of kernel developers who have volunteered for this task, and a few that haven’t.

Il se compose d'un grand nombre de développeurs de noyau qui se sont portés volontaires pour cette tâche et d'un petit nombre qui ne l'ont pas fait.


À l'origine, il fait partie du code source du noyau Linux, il sera donc traité comme GPLv2 (reconnaissance qu'il devrait l'être).

https://www.kernel.org/doc/html/latest/index.html

Licensing documentation

The following describes the license of the Linux kernel source code (GPLv2), how to properly mark the license of individual files in the source tree, as well as links to the full license text.

https://www.kernel.org/doc/html/latest/process/license-rules.html#kernel-licensing

Recommended Posts

Tout ce que vous avez toujours voulu savoir sur les versions stables de Linux (1/2)
Tout ce que vous avez toujours voulu savoir sur les versions stables de Linux (2/2)
Opérations clés que vous souhaitez connaître
Je veux savoir comment fonctionne LINUX!