sys-kernel: new kernel README file, everything has changed!

This commit is contained in:
Michael Marineau 2014-12-10 20:25:46 -08:00
parent d6a3eacf65
commit dce279172c
2 changed files with 24 additions and 42 deletions

View File

@ -0,0 +1,24 @@
The kernel is provided in two parts: coreos-sources and coreos-kernel.
coreos-sources is a traditional Gentoo kernel source ebuild, which
installs to ${ROOT}/usr/src/linux-${PV}. No extra revision or name is
added since, like the upstream vanilla-sources, we don't ship patches.
coreos-kernel uses the installed sources to build a kernel image and all
modules. The kernel config is searched for in the files directory based
on the ebuild version and revision. For example version 3.12.4-r2:
- amd64_defconfig-3.12.4-r2
- amd64_defconfig-3.12.4
- amd64_defconfig-3.12
- amd64_defconfig
Currently our dracut based initrd (bootengine) gets built directly into
the kernel image, including all kernel modules. (go go modular kernels!)
This reason for this screwy scheme never came to pass and should be
fixed eventually. The current grub bootloader already includes logic for
initrds but the old configure_bootloaders and coreos-postinst scripts
need to be updated in order to support existing installs.
The coreos-firmware package is a magic version of the upstream
linux-firmware ebuild which scans the modules installed by coreos-kernel
and only installs files modules declare as required.

View File

@ -1,42 +0,0 @@
The kernel tree is managed in git and is just the latest stable kernel.
To bump to a new version do the following:
1) Setup a checkout of github.com/coreos/linux
2) Edit the .git/config to look like this:
```
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "github"]
url = git@github.com:coreos/linux.git
fetch = +refs/heads/*:refs/remotes/github/*
[branch "master"]
remote = github
merge = refs/heads/master
[remote "linus"]
url = git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
fetch = +refs/heads/*:refs/remotes/linus/*
[remote "stable"]
url = https://kernel.googlesource.com/pub/scm/linux/kernel/git/stable/linux-stable
fetch = +refs/heads/*:refs/remotes/stable/*
```
3) git fetch --all
3) git checkout -b 'coreos/v3.10.10'
4) git reset --hard v3.10.10
5a) apply any coreos-specific patches that are not yet upstream (i.e. 9p patch)
that happened to be in a previous kernel branch.
6) git push github coreos/v3.10.10
7) git checkout coreos/master && git reset --hard coreos/v3.10.10 && git push -f github coreos/master
Then you can bump the hash in the ebuild and move it to the new version here.