Summary

Release Note

Deliver monthly kernel releases as tagged releases on git.linaro.org, tarballs and Ubuntu packaged kernels.

Rationale

For Oneiric we are required to deliver monthly kernel and packaged kernel releases. We are also required to deliver kernels for continous integration testing.

User stories

A developer wants to try out the latest Linaro kernel on a Panda board. He is comfortable with git and has access to git.linaro.org.

Another developer wants the latest Linaro kernel but does not care to use git and besides is behind a firewall that does not allow git access.

A third developer is the maintainer of the Ubuntu LEB hwpack for Panda and needs the latest kernel for the monthly LEB release.

Yet another devloper wants a kernel with extra SOC functionality so needs a landing team kernel.

Assumptions

There are several delivery methods for official Linaro kernels

  • git.linaro.org
  • tarballs
  • Kernels packaged with basic packagin produced by scripts/package/builddeb in mainline kernel tree.
    • This method will likely be useful for continuous integration (CI) testing. Note: this method is not adequate for LEB Ubuntu releases.
  • Kernels packaged with full Ubuntu sauce and packaging
    • This method could be used for CI and monthly LEB releases.

Likewise, Landing Team (LT) kernels can be delivered in multiple ways but this spec does not cover that.

The workload for delivering Linaro packaged kernels will drop significantly if the upstream kernel has already been validated by the KWG.

Implementation

Monthly, the KWG will:

  • Tag the linux-linaro-2.6.NN kernel at a commit that is known to be a good candidate based on continuous testing.
  • Produce tarball release and publish somewhere (TBD) on launchpad.net.
  • Notify platform team that the montly release is ready.

Similarly, the Platform team will:

  • Pull the KWG commit and merge in appropriate Ubuntu Sauce and packaging and Linaro packaging.
  • Do a test cross-build
  • Create a source package and push to the Ubuntu archive.
  • Wait for the resulting binary package to arrive in the archive.
  • Create and push a meta package and push to the Ubuntu archive.
  • Wait again.
  • Notify the maintainers of LEB hwpacks that the new kernel is ready.

Code Changes

In order to benefit from the upstream KWG testing the official packaged kernel should have a config that is as similar as possible to the upstream. For this reason and also the well know problem of the kernel configs for OMAP being too large and out of sync with the other SOC's, the packaged kernel configs will be brought closer to kernel defaults and one another.

Test/Demo Plan

In addition to the monthly releases the KWG and Platform teams will use the Validation team continous integration infrastructure to do continous validation testing. Details of how to deliver/trigger these tests are TBD.

Unresolved issues

These same deliveries and testing need to happen for other kernels.

  • Android Kernels based on linux-linaro-2.6.NN + Android patches.
  • Landing Team Kernels.

BoF agenda and discussion

  • Two hwpacks per platform
    • one with nico kernel one with lt kernel
    Four kernels:
    • nico per platform linaro packaged kernel per platform landing per platform landing + packaging per platform
    Android kernels:
    • John Stulz tree is built on nico
      • needs daily build testing eventually needs daily platform testing
      build and run tiny android no multi media run some subset of cts use adb for mini evaluation landing team android kernels same thing


CategorySpec CategoryTemplate

Platform/DevPlatform/Specs/Oneiric-KernelDelivery (last modified 2011-05-19 20:40:56)