After booting the InstallCD on my Ultra 10, I get an error message that the SquashFS file can't be mounted. I've also tried the autobuild from 2009-07-06, which has the same result. dmesg shows the following line at the end: SQHASHFS: Mounting a different endian SQUASHFS filesystem on loop0 Reproducible: Always Steps to Reproduce: 1. Download ISO from mirror 2. Burn ISO to CD 3. Boot from CD Actual Results: >> Media found on /dev/hdc >> Determining root device... >> Determining looptype... >> Mounting squashfs filesystem mount: mounting /dev/loop0 on /newroot/mnt/livecd failed: Invalid argument !! Failed to $1; failing back to the shell... BusyBox v1.7.4 (2009-08-03 17:59:34 UTC) built-in shell (ash) Enter 'help' for a list of built-in commands. /bin/ash: can't access tty; job control turned off # Expected Results: A SquashFS filesystem that properly mounts. Apparently I'm not the only one who seems to be having the same problem, see http://ekschi.com/technology/2009/07/29/experiencing-linux-on-sparc-ldomgentoo/ for reference.
Looks like I've found the problem. Recently, squashfs-tools-4.0 was marked sparc (bug #273131), which requires a kernel >=2.6.29. However, the current stable version of gentoo-sources is stuck at 2.6.28-r5 for sparc, which only has support for SquashFS <=v3. Until gentoo-sources >=2.6.29 has been stabled for sparc (and the build host generates a new InstallCD which includes that kernel), this problem will occur with any weekly InstallCD that is currently on the mirror. However, there is a workaround that requires a helper system (in my case, an amd64 box) with a >=2.6.29 kernel and SquashFS/loop support built in. It took a while to figure this out (with a bit of help from the Catalyst sources), so I'll post the entire process here in case somebody has to deal with the same problem. - Emerge squashfs-tools (emerge =sys-fs/squashfs-tools-3.3) - Create a bunch of temporary directories (mkdir /mnt/sparc-old /mnt/sparc-new /mnt/squashfs) - Mount the InstallCD ISO as a loop filesystem (mount /home/user/install-sparc64-minimal-20090803.iso /mnt/sparc-old -o loop) - Copy the contents of that mount point to a different directory (cp -a /mnt/sparc-old /mnt/sparc-new) - Unmount the old ISO file (umount /mnt/sparc-old) - Mount the v4 image.squashfs (mount /mnt/sparc-new/image.squashfs /mnt/squashfs -t squashfs) - Create a new SquashFS v3 file (mksquashfs /mnt/squashfs /mnt/image.squashfs) - Unmount SquashFS v4 (umount /mnt/squashfs) - Move the new SquashFS v3 file (mv /mnt/image.squashfs /mnt/sparc-new) - Create a new ISO file (mkisofs -J -R -l -V "Gentoo Linux - SPARC 20090815" -o /home/user/install-sparc64-minimal-20090815.iso -G "/mnt/sparc-new/boot/isofs.b" -B ... /mnt/sparc-new - Burn the ISO and see if it works - Remove the directories (rm -rf /mnt/sparc-old /mnt/sparc-new /mnt/squashfs) Voilà, a custom InstallCD that boots completely.
I've already fixed this by downgrading squashfs-tools to 3.3 on bender, the sparc build machine