mirror of
https://github.com/cirosantilli/linux-kernel-module-cheat.git
synced 2026-01-23 02:05:57 +01:00
linux: move rebase procedure to submodule neutral section
This commit is contained in:
50
README.adoc
50
README.adoc
@@ -3097,30 +3097,6 @@ This backwards compatibility is just awesome, it makes getting and running the l
|
||||
|
||||
This also makes this repo the perfect setup to develop the Linux kernel.
|
||||
|
||||
When we had a local patchset on top of mainline, this is how we updated it:
|
||||
|
||||
....
|
||||
# Last point before out patches.
|
||||
last_mainline_revision=v4.15
|
||||
next_mainline_revision=v4.16
|
||||
cd linux
|
||||
|
||||
# Create a branch before the rebase in case things go wrong.
|
||||
git checkout -b "lkmc-${last_mainline_revision}"
|
||||
git remote set-url origin git@github.com:cirosantilli/linux.git
|
||||
git push
|
||||
git checkout master
|
||||
|
||||
git remote add up git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
|
||||
git fetch up
|
||||
git rebase --onto "$next_mainline_revision" "$last_mainline_revision"
|
||||
|
||||
# And update the README to show off.
|
||||
git commit -m "linux: update to ${next_mainline_revision}"
|
||||
....
|
||||
|
||||
But we have since moved to running just mainline, which makes the update simpler.
|
||||
|
||||
In case something breaks while updating the Linux kernel, you can try to bisect it to understand the root cause: <<bisection>>.
|
||||
|
||||
==== Downgrade the Linux kernel
|
||||
@@ -9538,6 +9514,32 @@ rm -rf "$(./getvar -a arm build_dir)/host-qemu-custom.bisect"
|
||||
|
||||
An example of Linux kernel commit bisection on gem5 boots can be found at: link:linux-bisect-boot-gem5[].
|
||||
|
||||
==== Update a forked submodule
|
||||
|
||||
This is a template update procedure for submodules for which we have some patches on on top of mainline.
|
||||
|
||||
This example is based on the Linux kernel, for which we used to have patches, but have since moved to mainline:
|
||||
|
||||
....
|
||||
# Last point before out patches.
|
||||
last_mainline_revision=v4.15
|
||||
next_mainline_revision=v4.16
|
||||
cd linux
|
||||
|
||||
# Create a branch before the rebase in case things go wrong.
|
||||
git checkout -b "lkmc-${last_mainline_revision}"
|
||||
git remote set-url origin git@github.com:cirosantilli/linux.git
|
||||
git push
|
||||
git checkout master
|
||||
|
||||
git remote add up git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
|
||||
git fetch up
|
||||
git rebase --onto "$next_mainline_revision" "$last_mainline_revision"
|
||||
|
||||
# And update the README to show off.
|
||||
git commit -m "linux: update to ${next_mainline_revision}"
|
||||
....
|
||||
|
||||
==== Sanity checks
|
||||
|
||||
Basic C and C++ hello worlds:
|
||||
|
||||
Reference in New Issue
Block a user