Skip to content

Commit 0b4070c

Browse files
committed
test: add debug symbols to debug kernels
Signed-off-by: Pablo Barbáchano <[email protected]>
1 parent 9f455aa commit 0b4070c

File tree

3 files changed

+23
-3
lines changed

3 files changed

+23
-3
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
CONFIG_FRAME_POINTER=y
2+
# CONFIG_KGDB=y
3+
# CONFIG_KGDB_SERIAL_CONSOLE=y
4+
CONFIG_DEBUG_INFO=y
5+
CONFIG_DEBUG_INFO_DWARF4=y

resources/rebuild.sh

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,15 @@ function prepare_and_build_rootfs {
193193
build_initramfs
194194
}
195195

196+
function vmlinux_split_debuginfo {
197+
VMLINUX="$1"
198+
DEBUGINFO="$VMLINUX.debug"
199+
objcopy --only-keep-debug $VMLINUX $DEBUGINFO
200+
objcopy --preserve-dates --strip-debug --add-gnu-debuglink=$DEBUGINFO $VMLINUX
201+
# gdb does not support compressed files, but compress them because they are huge
202+
gzip -v $DEBUGINFO
203+
}
204+
196205
function build_al_kernels {
197206
if [[ $# = 0 ]]; then
198207
local KERNEL_VERSION="all"
@@ -208,7 +217,6 @@ function build_al_kernels {
208217
clone_amazon_linux_repo
209218

210219
CI_CONFIG="$PWD/guest_configs/ci.config"
211-
FTRACE_CONFIG="$PWD/guest_configs/ftrace.config"
212220

213221
if [[ "$KERNEL_VERSION" == @(all|5.10) ]]; then
214222
build_al_kernel $PWD/guest_configs/microvm-kernel-ci-$ARCH-5.10.config "$CI_CONFIG"
@@ -221,10 +229,14 @@ function build_al_kernels {
221229
fi
222230

223231
# Build debug kernels
232+
FTRACE_CONFIG="$PWD/guest_configs/ftrace.config"
233+
DEBUG_CONFIG="$PWD/guest_configs/debug.config"
224234
OUTPUT_DIR=$OUTPUT_DIR/debug
225235
mkdir -pv $OUTPUT_DIR
226-
build_al_kernel "$PWD/guest_configs/microvm-kernel-ci-$ARCH-5.10.config" "$CI_CONFIG" "$FTRACE_CONFIG"
227-
build_al_kernel "$PWD/guest_configs/microvm-kernel-ci-$ARCH-6.1.config" "$CI_CONFIG" "$FTRACE_CONFIG"
236+
build_al_kernel "$PWD/guest_configs/microvm-kernel-ci-$ARCH-5.10.config" "$CI_CONFIG" "$FTRACE_CONFIG" "$DEBUG_CONFIG"
237+
vmlinux_split_debuginfo $OUTPUT_DIR/vmlinux-5.10.*
238+
build_al_kernel "$PWD/guest_configs/microvm-kernel-ci-$ARCH-6.1.config" "$CI_CONFIG" "$FTRACE_CONFIG" "$DEBUG_CONFIG"
239+
vmlinux_split_debuginfo $OUTPUT_DIR/vmlinux-6.1.*
228240
}
229241

230242
function print_help {

tools/setup-ci-artifacts.sh

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,3 +46,6 @@ for SQUASHFS in *.squashfs; do
4646
mkfs.ext4 -F $EXT4 -d squashfs-root
4747
rm -rf squashfs-root
4848
done
49+
50+
say "Uncompress debuginfo files"
51+
find . -name "*.debug.gz" -print0 | xargs -P4 -0 -t -n1 gunzip

0 commit comments

Comments
 (0)