mirror of
https://github.com/openglow-org/forgefirm.git
synced 2026-09-27 16:51:12 -07:00
kas/forgefirm-glowforge-debug.yml builds one dev image on the debug kernel (FORGEFIRM_KERNEL_DEBUG=1, tagged dev-debug) beside the closing release and dev images; the debug options never touch either. scripts/bench/debug_kernel_drills.py runs the two drills (three load/unload cycles under DEBUG_MUTEXES, a forced -EPROBE_DEFER unwind), each read against dmesg for lock splats, refusing on a non-debug kernel or a non-idle machine; it is registered as a board bench tool. BRINGUP item 3 names the mechanism and stays remaining work (run it on the closing burn); the site's Build page documents the variant.
33 lines
1.4 KiB
YAML
33 lines
1.4 KiB
YAML
# ============================================================================
|
|
# ForgeFIRM — debug-kernel build variant
|
|
# ============================================================================
|
|
# One target: a dev image whose kernel carries the lock-correctness options
|
|
# (DEBUG_MUTEXES, PROVE_LOCKING, DEBUG_ATOMIC_SLEEP, DEBUG_SPINLOCK). It rides
|
|
# the closing build: after the normal release + dev images build, one pass of
|
|
# this config produces a dev image tagged "(dev-debug)". The bench boots it
|
|
# once to run the module load/unload and forced -EPROBE_DEFER drills
|
|
# (forgefirm/scripts/bench/debug_kernel_drills.py), then the real image is
|
|
# flashed. The options never touch a release or a normal dev build.
|
|
#
|
|
# cd forgefirm
|
|
# kas build kas/forgefirm-glowforge-debug.yml
|
|
#
|
|
# The debug kernel has a different config signature, so bitbake rebuilds the
|
|
# kernel and the dev image under it without disturbing the images already in
|
|
# build/tmp/deploy/images/glowforge/; the debug dev image lands beside them
|
|
# with its own DATETIME stamp and the "(dev-debug)" version string.
|
|
# ============================================================================
|
|
|
|
header:
|
|
version: 14
|
|
includes:
|
|
- forgefirm-glowforge.yml
|
|
|
|
target: forgefirm-image-dev
|
|
|
|
local_conf_header:
|
|
debug-kernel: |
|
|
FORGEFIRM_KERNEL_DEBUG = "1"
|
|
FORGEFIRM_VERSION_STRING:pn-forgefirm-image-dev = "${DATETIME} (dev-debug)"
|
|
FORGEFIRM_VERSION_STRING[vardepsexclude] += "DATETIME"
|