Add kexec test configs for solidrun/honeycomb

the images are called kexectestimage-5.10 and kexectestimage-5.4

They include two kernels, kernel-5.4 and kernel-5.10

Build the images, netboot them, and once they boot, you can test kexec:
kexec kernel-5.4
kexec kernel-5.10

Signed-off-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
Ronald G. Minnich 2021-12-05 22:47:11 -08:00
parent 607315e2e6
commit b58a2e50de
5 changed files with 15847 additions and 1 deletions

View File

@ -44,6 +44,31 @@ u-root:
usefultargets:
echo fetch, uroot, netbootkernel
# the kexectestimage has standard u-root commands, kexec-tools version of kexec, and two
# test kernels, a 5.10 and a 5.4
kexectestimage-5.10: kexecconfig-5.10 kexecinitramfs.cpio
cp $< linux-5.10/.config
(cd linux-5.10 && CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make oldconfig && CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make -j32)
cp linux-5.10/arch/arm64/boot/Image $@
kexectestimage-5.4: kexecconfig-5.4 kexecinitramfs.cpio
cp $< linux/.config
(cd linux && CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make oldconfig && CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make -j32)
cp linux/arch/arm64/boot/Image $@
kernel-5.4: config-5.4.47 flashinitramfs.cpio
cp $< linux/.config
(cd linux && CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make oldconfig && CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make -j32)
cp linux/arch/arm64/boot/Image $@
kexecinitramfs.cpio: u-root Makefile kernel-5.4 kernel-5.10
GO111MODULE=off GOARCH=arm64 u-root -o $@ -build=bb \
-files ~/.ssh/cpu_rsa.pub:key.pub \
-files kernel-5.4 -files kernel-5.10 \
github.com/u-root/cpu/cmds/cpud \
github.com/u-root/u-root/cmds/boot/pxeboot \
core \
flashinitramfs.cpio: u-root Makefile
GO111MODULE=off GOARCH=arm64 u-root -o $@ -build=bb \
-files ~/.ssh/cpu_rsa.pub:key.pub \
@ -56,6 +81,11 @@ netbootkernel: config-5.4.47 flashinitramfs.cpio
(cd linux && CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make oldconfig && CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make -j32)
cp linux/arch/arm64/boot/Image $@
kernel-5.10: config-5.10 flashinitramfs.cpio
cp $< linux/.config
(cd linux-5.10 && CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make oldconfig && CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make -j32)
cp linux-5.10/arch/arm64/boot/Image $@
# These stanzas fetch code.
fetch: getkernel geturoot
@ -63,6 +93,10 @@ getkernel:
rm -rf linux
git clone --depth=1 -b solidrun-honeycomb --single-branch https://github.com/linuxboot/linux
getkernel-5.10:
rm -rf linux-5.10
git clone --depth=1 -b v5.10 --single-branch https://github.com/torvalds/linux linux-5.10
geturoot:
GO111MODULE=off go get -u github.com/u-root/u-root
GO111MODULE=off go get -u github.com/u-root/cpu/...

File diff suppressed because it is too large Load Diff

View File

@ -362,7 +362,8 @@ CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
# CONFIG_PARAVIRT is not set
# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
CONFIG_KEXEC=y
# CONFIG_KEXEC_FILE is not set
CONFIG_KEXEC_FILE=y
# CONFIG_KEXEC_SIG is not set
# CONFIG_CRASH_DUMP is not set
# CONFIG_XEN is not set
CONFIG_FORCE_MAX_ZONEORDER=11

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff