mirada-usb: force_gpt en la cmdline + post-mortem del viaje NVIDIA

El firmware del tester reparo el GPT dd-eado en el POST y dejo el header
primario invalido (entradas apuntadas a LBA 2016, presentes en LBA 2):
Linux sin gpt en cmdline no cae al respaldo, no vio particiones y la
telemetria MIRADALOG murio en RAM. Con gpt el kernel usa el respaldo.
Documentado: greeter por nouveau GL validado en metal; input muerto queda
abierto con el plan de evidencia para el proximo viaje.
This commit is contained in:
2026-07-16 12:16:04 -04:00
parent 71ec92345f
commit 0f6c841782
2 changed files with 32 additions and 1 deletions
+7 -1
View File
@@ -389,9 +389,15 @@ if [ "$PACKAGE" = "1" ]; then
# sin esta partición no sobrevive ni un log al apagado — y la GPU a probar está en otra máquina, lejos.
# El init la monta por LABEL=MIRADALOG con -o sync y vuelca ahí todo (ver /sbin/init).
# FAT32 ⇒ el pendrive se lee después desde cualquier SO, sin herramientas.
# `gpt` (force_gpt): la imagen dd-eada deja el GPT de respaldo en el MEDIO del disco (fin de la
# imagen, no del pendrive) y hay firmwares UEFI que lo "reparan" en el POST — reescriben el header
# primario apuntando las entradas a otro LBA sin copiarlas ⇒ primario INVÁLIDO. Linux, sin `gpt`,
# NO cae al respaldo con primario roto (block/partitions/efi.c) ⇒ cero particiones ⇒ findfs no ve
# MIRADALOG y la telemetría muere en RAM (pasó en el tester NVIDIA, 2026-07-16). Con `gpt` el kernel
# usa el respaldo y la telemetría sobrevive incluso con el primario mutilado.
ROOTFS="$RFS" KERNEL="$KGEN" IMG="work/hammer-mirada-usb.img" \
DATA_MB="${DATA_MB:-512}" DATA_LABEL="MIRADALOG" \
OPTIONS="${CMDLINE:-console=tty0 loglevel=4}" \
OPTIONS="${CMDLINE:-console=tty0 loglevel=4 gpt}" \
scripts/metal-usb-sdboot.sh
echo ""
echo "✓ imagen: work/hammer-mirada-usb.img"