User Tools

Site Tools


CIP kernel release tutorial

This is a kernel release tutorial for CIP linux kernel.

1. Check out -cip remote branch to local branch.

For example, if you want to check out cip/linux-4.19.y-cip remote branch as linux-4.19.y-cip local branch, do following:

git checkout -b linux-4.19.y-cip cip/linux-4.19.y-cip

2. Update the localversion-cip file and commit it.

The content of this file is -cipN. N means the number of releases.

3. Create a release tag.

The tag is the kernel version to be released plus the CIP release version.For example, when releasing cip32 based on v4.4.176, the tag is v4.4.176-cip32. When creating tags, sign with GnuPG.

4. Push updates into the CIP's kernel repository.

The branch to push is as follows:

  • 4.4.y kernel: linux-4.4.y-cip
  • 4.19.y kernel: linux-4.19.y-cip

And the tag needs to be pushed. If you want to push only a specific tag, do the following:

git push cip v4.4.176-cip32


git push cip refs/tags/v4.4.176-cip32

5. Check out the -rebase remote branch.

NOTE: The -rebase branch is a branch to make it easy to understand changes between LTS and CIP.

6. Rebase commits on target kernel version.

After rebasing,

  • Cherry-pick CIP-specific commits that have been added to the non-rebased branch
  • Check that the result is now identical to the non-rebased branch

Once the stable branch reaches end-of-life the CIP branch won't need to be rebased any more but those extra steps will still be needed.

7. Create a tag for rebase release.

This is also signed by GPG.

8. Push updates of -rebase branch into the CIP's kernel repository.

The branch to push is as follows:

  • 4.4.y kernel: linux-4.4.y-cip-rebase
  • 4.19.y kernel: linux-4.19.y-cip-rebase

And the tag needs to be pushed.

9. Send release announcement to

civilinfrastructureplatform/cipkernelmaintenance_release_tutorial.txt · Last modified: 2020/01/08 04:17 by nobuhiro.iwamatsu