debug(arm64): use /dev/vda4 directly instead of LABEL=KSOLODATA
piCore64's blkid/findfs binaries (separate util-linux dynamics, NOT busybox
symlinks) crash in QEMU virt with the same instruction-abort issue as the
broken BusyBox. The host's static busybox doesn't include blkid/findfs
applets either, so stage 20-persistent-mount.sh segfaults in a loop trying
to resolve LABEL=KSOLODATA.
Short-term: hardcode /dev/vda4 (the virtio data partition under QEMU) so
the boot can progress past stage 20 and we can see what else needs fixing.
Pre-v0.3 release we need to either:
a) ship a real blkid/findfs binary that works (util-linux from upstream,
statically built), or
b) avoid LABEL= entirely and detect the data partition by walking
/sys/class/block looking for our ext4 magic+label.
Either way the LABEL= path needs to work on real ARM64 hosts where the
device path varies (vda/sda/nvme0n1).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -64,13 +64,13 @@ fi
|
|||||||
menuentry "KubeSolo OS (${slot_label})" {
|
menuentry "KubeSolo OS (${slot_label})" {
|
||||||
echo "Booting KubeSolo OS from ${slot_label}..."
|
echo "Booting KubeSolo OS from ${slot_label}..."
|
||||||
echo "Boot counter: ${boot_counter}, Boot success: ${boot_success}"
|
echo "Boot counter: ${boot_counter}, Boot success: ${boot_success}"
|
||||||
linux /vmlinuz init=/sbin/init kubesolo.data=LABEL=KSOLODATA console=ttyS0,115200 console=ttyAMA0,115200
|
linux /vmlinuz init=/sbin/init kubesolo.data=/dev/vda4 console=ttyS0,115200 console=ttyAMA0,115200
|
||||||
initrd /kubesolo-os.gz
|
initrd /kubesolo-os.gz
|
||||||
}
|
}
|
||||||
|
|
||||||
menuentry "KubeSolo OS (${slot_label}) — Debug Mode" {
|
menuentry "KubeSolo OS (${slot_label}) — Debug Mode" {
|
||||||
echo "Booting KubeSolo OS (debug) from ${slot_label}..."
|
echo "Booting KubeSolo OS (debug) from ${slot_label}..."
|
||||||
linux /vmlinuz kubesolo.data=LABEL=KSOLODATA kubesolo.debug console=ttyS0,115200 console=ttyAMA0,115200
|
linux /vmlinuz kubesolo.data=/dev/vda4 kubesolo.debug console=ttyS0,115200 console=ttyAMA0,115200
|
||||||
initrd /kubesolo-os.gz
|
initrd /kubesolo-os.gz
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -88,6 +88,6 @@ menuentry "KubeSolo OS — Boot Other Slot" {
|
|||||||
set root='(hd0,gpt2)'
|
set root='(hd0,gpt2)'
|
||||||
echo "Booting from System A (passive)..."
|
echo "Booting from System A (passive)..."
|
||||||
fi
|
fi
|
||||||
linux /vmlinuz kubesolo.data=LABEL=KSOLODATA kubesolo.debug console=ttyS0,115200 console=ttyAMA0,115200
|
linux /vmlinuz kubesolo.data=/dev/vda4 kubesolo.debug console=ttyS0,115200 console=ttyAMA0,115200
|
||||||
initrd /kubesolo-os.gz
|
initrd /kubesolo-os.gz
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user