summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rwxr-xr-xtools/guest-diag/cycle-r1780.sh26
1 files changed, 26 insertions, 0 deletions
diff --git a/tools/guest-diag/cycle-r1780.sh b/tools/guest-diag/cycle-r1780.sh
index 4fb796a..24bff12 100755
--- a/tools/guest-diag/cycle-r1780.sh
+++ b/tools/guest-diag/cycle-r1780.sh
@@ -145,6 +145,32 @@ echo "$TAG" > "$RUNDIR/current-tag"
for i in $(seq 1 90); do
if timeout 5 sudo python3 "$REPO/scripts/vgpu_vm.py" exec "echo CYCLE_UP" 2>/dev/null | grep -q CYCLE_UP; then
echo "[cycle $TAG] guest agent up"
+ # 2026-11-13 (eng9, c198-c203 RCA): arm the GR forward lane. Without
+ # this block the pump's GR request gate refuses EVERY captured launch
+ # with "backend not ready" (gsp_phys_backend_gr_ready() is false until
+ # the rm-call ladder latches boot_stage.rmcall_gr_exec_ok) and the
+ # backend submit then refuses with -EAGAIN until the guest RAM
+ # backing is registered: captured GL sections never become
+ # `GR LAUNCH submitted`, gl_frames reads black (px0=0), work_gr shows
+ # refused==fallback==req with submitted==0. Trigger 4 alone on a
+ # fresh session is EXPECTED to fail at stage 1 (NV01_ROOT 0x23):
+ # trigger 5 adopts the static handles first (docs/eng-ops.md Step 4).
+ LADDER_LOG="$BACKUP/$TAG-ladder.txt"
+ : > "$LADDER_LOG"
+ echo "[cycle $TAG] arm GR lane (rm-call ladder 5->3->4 + guest-ram backing)"
+ for t in 5 3 4; do
+ sudo bash -c "echo $t > /sys/kernel/debug/vgsp/gsp-phys-rm-call" 2>>"$LADDER_LOG" || true
+ sleep 4
+ done
+ sudo dmesg -T 2>/dev/null | grep -E "rm-call: (stage|ladder|REAL GR)|ladder at stage" | tail -10 >> "$LADDER_LOG" || true
+ sudo bash -c "echo '$U /dev/shm/vgpu-guest-ram 0x80000000 0x0 0x300000000' > /sys/kernel/debug/vgsp/gsp-phys-guest-ram" 2>>"$LADDER_LOG" || true
+ sleep 1
+ sudo cat /sys/kernel/debug/vgsp/gsp-phys-state 2>/dev/null | grep -E "work_gr|guest_ram:" | cut -c1-220 >> "$LADDER_LOG" || true
+ if grep -q "ladder at stage 4" "$LADDER_LOG"; then
+ echo "[cycle $TAG] GR lane armed (ladder stage 4; guest-ram configured; log: $LADDER_LOG)"
+ else
+ echo "[cycle $TAG] WARN: GR lane arm incomplete (see $LADDER_LOG); cycle still usable"
+ fi
exit 0
fi
sleep 2