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:
@@ -50,6 +50,31 @@ Pascal **no** usa GSP (eso es Turing+). La imagen hornea el firmware de acelerac
|
||||
llvmpipe/lavapipe sobre simpledrm: el **compositor** arranca seguro; el **greeter no completa**
|
||||
(los rasterizadores software no dan float16). Útil si nouveau diera problemas.
|
||||
|
||||
## Post-mortem del primer viaje (GTX 1060, 2026-07-16)
|
||||
|
||||
**Qué se vio en el metal:** booteó, el fondo animado del greeter pintó bien (⇒ nouveau GL +
|
||||
float16 VALIDADOS end-to-end), pero **sin input** (ni teclado ni mouse) y el pendrive volvió
|
||||
**sin telemetría** (partición MIRADALOG vacía).
|
||||
|
||||
**Por qué se perdió la telemetría (resuelto):** el GPT de respaldo de la imagen dd-eada queda en el
|
||||
*medio* del pendrive (al final de la imagen, no del disco) y el firmware de la máquina lo "reparó" en
|
||||
el POST: reconstruyó el respaldo al final del disco (bien) y reescribió el header primario apuntando
|
||||
las entradas a LBA 2016 **sin copiarlas ahí** (quedaron en LBA 2) ⇒ CRC inválido. Linux **no** cae al
|
||||
GPT de respaldo con el primario roto salvo `gpt` en la cmdline (`block/partitions/efi.c`, `force_gpt`)
|
||||
⇒ cero particiones ⇒ `findfs LABEL=MIRADALOG` falló ⇒ logs sólo en RAM. UEFI y Windows sí usan el
|
||||
respaldo — por eso el stick booteaba y Windows lo leía, mientras Linux no veía `sdX1/sdX2`.
|
||||
**Fix:** la cmdline por defecto ahora lleva `gpt`. Si un stick ya quedó mutilado: el header primario
|
||||
se repara apuntando `partition_entry_lba` de vuelta a 2 y recomputando su CRC (o `gdisk` menú
|
||||
recovery, opción `c` = load backup partition table + `w`).
|
||||
|
||||
**Input muerto (abierto):** nunca se validó — la validación QEMU fue `-display none`. Sospechosos, en
|
||||
orden: enumeración libinput sobre `libudev-zero` (¿0 dispositivos?), falta de nodos `/dev/input/event*`
|
||||
(el kernel generic trae usbhid/evdev built-in, debería haberlos), foco. El próximo viaje ya trae la
|
||||
evidencia: `01-hardware.txt` snapshotea `/proc/bus/input/devices` (lado kernel) y mirada ahora loguea
|
||||
cada `DeviceAdded` de libinput con nombre y capacidades (lado userspace, va al `05-mirada.log`) —
|
||||
commit en tawasuyu `mirada-compositor/src/drm_backend/input.rs`. Con telemetría persistente funcionando,
|
||||
ese par de archivos separa kernel vs udev vs foco.
|
||||
|
||||
## Pendiente / deuda
|
||||
|
||||
- **Confirmar en el metal**: el camino nouveau-GL sólo se puede validar en la 1060 real (QEMU no tiene
|
||||
|
||||
Reference in New Issue
Block a user