diff options
Diffstat (limited to 'roms/skiboot/doc/process/stable-skiboot-rules.rst')
-rw-r--r-- | roms/skiboot/doc/process/stable-skiboot-rules.rst | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/roms/skiboot/doc/process/stable-skiboot-rules.rst b/roms/skiboot/doc/process/stable-skiboot-rules.rst new file mode 100644 index 000000000..38bae8f4e --- /dev/null +++ b/roms/skiboot/doc/process/stable-skiboot-rules.rst @@ -0,0 +1,84 @@ +.. _stable-rules: + +====================================== +Skiboot stable tree rules and releases +====================================== + +If you're at all familiar with the Linux kernel stable trees, this should +seem fairly familiar. + +The purpose of a -stable tree is to give vendors a stable base to create +firmware releases from and to incorporate into service packs. New stable +releases contain critical fixes only. + +As a general rule, on the most recent skiboot release gets a maintained +-stable tree. If you wish to maintain an older tree, speak up! For example, +with my IBMer hat on, we'll maintain branches that we ship in products. + +What patches are accepted? +-------------------------- + +* Patches must be obviously correct and tested + + * A Tested-by signoff is *important* +* A patch must fix a real bug +* No trivial patches, such fixups belong in main branch +* Not fix a purely theoretical problem unless you can prove how + it's exploitable +* The patch, or an equivalent one, must already be in master + + * Submitting to both at the same time is okay, but backporting is better + +HOWTO submit to stable +---------------------- +Two ways: + +1. Send patch to the skiboot-stable@lists.ozlabs.org list with + "[PATCH <stable version>]" in subject + + * This targets the patch *ONLY* to the stable branch. + + * Such commits will *NOT* be merged into master. + * Use this when: + + a. cherry-picking a fix from master + b. fixing something that is only broken in stable + c. fix in stable needs to be completely different than in master + + If b or c: explain why. + * If cherry-picking, include the following at the top of your + commit message: :: + + commit <sha1> upstream. + * If the patch has been modified, explain why in description. + +2. Add "Cc: skiboot-stable@lists.ozlabs.org" above your Signed-off-by line + when sending to skiboot@ + + * This targets the patch to master and stable. + * You can target a patch to a specific stable tree with: :: + + Cc: skiboot-stable@lists.ozlabs.org # 5.1.x + + and that will target it to the 5.1.x branch. + * You can ask for prerequisites to be cherry-picked: :: + + Cc: skiboot-stable@lists.ozlabs.org # 5.1.x 55ae15b Ensure we run pollers in cpu_wait_job() + Cc: skiboot-stable@lists.ozlabs.org # 5.1.x + + Which means: + + 1. please ``git cherry-pick 55ae15b`` + 2. then apply this patch to 5.1.x". + +Trees +----- + +* https://github.com/open-power/skiboot/ (or via ssh at ``git@github.com:open-power/skiboot.git`` ) + + * (branches are skiboot-X.Y.x - e.g. skiboot-5.1.x) + +* Some stable versions may last longer than others + + * So there may be skiboot-5.1.x and skiboot-5.2.x actively maintained + and skiboot-5.1.x could possibly outlast skiboot-5.2.x |