CONFIG_PROVE_RCU is selected by CONFIG_PROVE_LOCKING via Kconfig
dependency. Cannot disable without disabling PROVE_LOCKING itself
(which would defeat the purpose). Documenting the execution deviation
from A5: PROVE_RCU=y remains. 10-min HW watchdog has plenty of margin.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
User picked ramoops path for the 0.4 hard gate. Current ampere kernel
has CONFIG_PSTORE_RAM=m but lacks PSTORE_CONSOLE, so ramoops can only
be made operational AFTER lockdep kernel rebuild.
4 amendments:
- 0.4: restructured. 0.4a/b survey current state (informational only),
0.4c notes accepted limitation (hard spinlock+IRQ-off won't flush),
0.4-G hard gate moves to step 1.8a (after lockdep kernel boots)
- 1.2: add --enable PSTORE_CONSOLE --enable PSTORE_PMSG
- 1.6: extend lockdep extlinux append with ramoops carve-out cmdline
(memmap=0x100000$0x10000000 ramoops.mem_address=0x10000000
ramoops.mem_size=0x100000 console_size=0x40000 dump_oops=1).
DEFAULT override is mandatory per Q3 (ramoops-only operator).
- 1.7/1.8: split into 1.7 (boot+module load), 1.8a (sysrq-trigger
ramoops verify HARD GATE), 1.8b (regular smoke test)
Documented limitation accepted by user: hard spinlock-with-IRQ-off
deadlocks (the worst-case iter6 v1 wedge shape) may not flush to
pstore before watchdog reset. Serial would catch those; ramoops may
miss. Bisect-apply 0004→0005→0006→0007v2 should surface lockdep
splats BEFORE the deadlock becomes a hard hang anyway.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Sonnet round 2 review ACCEPTED 0007 v2 + 4 of 5 amendment areas.
Q3 found one new issue introduced by amendments: U-Boot extlinux menu
selection requires physical keyboard/HDMI presence — not workable for
SSH-only operators relying on serial console.
Fix (single prose addition to step 1.6): if remote-only operator
relying on serial (0.4b), temporarily set DEFAULT arch_devices_lockdep
for this test boot. Restore DEFAULT arch_devices before any non-test
reboot. If ramoops-only (0.4a, no serial), DEFAULT override MANDATORY.
Q1 (0007 v2 source), Q2 (5 amendments), Q4 (recovery sufficiency) all
ACCEPTed. With this Q3 prose fix applied, Phase 5 review complete.
Pending user sign-off + serial cable confirmation before pre-flight.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Amendments per Sonnet architect review round 1:
- A1: 0007 v2 rewritten — 7 per-codec run() insertion points,
matches hantro pattern (after preamble metadata copy, before HW kick).
Old v1 (in rkvdec_device_run) REJECTED — wrong structural placement.
- A2: panthor ww_mutex/dma_resv contention added as primary hypothesis H1.
Smoke test 1.9/2.x extended to exercise GPU compositor path.
- A3: CONFIG_LOCALVERSION=-lockdep so lockdep kernel uname differs from
vanilla — prevents modules_install overwriting working tree.
- A4: pstore/serial gate is now HARD (one-of required); pre-flight aborts
if neither serial nor ramoops is functional.
- A5: PROVE_RCU removed from initial config — boot latency risk pushes
past watchdog before lockdep prints. Add back only if first run clean.
0007-v2 patch attached: 8 hunks across rkvdec-{h264,hevc,vdpu381-h264,
vdpu381-hevc,vdpu383-h264,vdpu383-hevc,vp9}.c + rkvdec.c queue_init flag.
25 lines insertions.
Pending Phase 5 round 2 delta-review of v2 source + amended plan before
any execution.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>