Long agonising story about a Thecus brick and request for info on increasing ramdisk size at boot
2008/1/7, Martin Michlmayr <[EMAIL PROTECTED]>: > Did you modify the MTD partitions? Oops. Make that a yes. I couldn't use the Thecus web interface, which needs flash player, so I had loaded kernel and initrd in RedBoot with load -v -r -b 0x800000 -m http -h 192.168.1.1 /.../armel-installer-initrd.gz fis create ramdisk load -v -r -b 0x200000 -m http -h 192.168.1.1 /.../vmlinuz-2.6.21-1-iop32x fis create kernel exec -c "console=ttyS0,115200 root=/dev/ram0 initrd=0xa0800000,42M mem" without realising that that truncated the ramdisk partition size too. Fixed in RedBoot with: fis load ramdisk # at 0x80000 fis create ramdisk -l 0xd00000 That let it boot the old kernel and ramdisk, and the dpkg -i of the new kernel package worked, but booting it failed because, although the kernel flash partition was big enough, it was only loading the new kernel up to the length of the old kernel: RedBoot> exec -c "console=ttyS0,115200 root=/dev/ram0 initrd=0xa0800000,42M" Build ATAG ATAG_MEM: Overwrite ram_end with real_region_top=0x20000000, memsize=512 M [EMAIL PROTECTED], MACH_TYPE=1101 Using base address 0x00200000 and length 0x0012fbd4 <hang> Fortunately I had backed up the mtd contents somewhere (but not the new kernel and ramdisk images, managgia!) so I've restored those: RedBoot> load -v -r -b 0x200000 -m http -h 192.168.1.1 /martin/tech/n2100/debian /mtd/mtdblock2 RedBoot> fis create kernel RedBoot> load -v -r -b 0x800000 -m http -h 192.168.1.1 /martin/tech/n2100/debian /mtd/mtdblock1 RedBoot> fis create ramdisk -l 0xd00000 -s 0x3e0000 and it now uncompresses and boots the old kernel again but clags saying: RAMDISK: Compressed image found at block 0 RAMDISK: incomplete write (-28 != 32768) 8388608 List of all partitions: 1f00 256 mtdblock0 (driver?) 1f01 13312 mtdblock1 (driver?) 1f02 1408 mtdblock2 (driver?) 1f03 1152 mtdblock3 (driver?) 1f04 4 mtdblock4 (driver?) 1f05 128 mtdblock5 (driver?) No filesystem could mount root, tried: cramfs Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0) That seems to be because the initrd is set to 8MB and "gzip -d < mtdblock/mtdblock1 | wc -c" says it's 9093120 bytes. (gzip: stdin: decompression OK, trailing garbage ignored) The kernel that's booting is 2.6.22-3, same as when it worked, and the ramdisk contains the right image ("gzip -d < mtdblock1 | cpio -i -t" lists lib/modules/2.6.22-3-iop32x/...) and those mtdblock contents were taken from it when it booted ok before. I've tried RedBoot> fis load ramdisk RedBoot> fis load kernel RedBoot> exec -c "console=ttyS0,115200 root=/dev/ram0 initrd=0xa0800000,42M" which I presume should set the ramdisk size, but it seems not to. I'm stumped now. Anyone know how to up the kernel ramdisk size from the bootparams? The ",42M" above" doesn't do it, nor does the ramdisk_size=16384" mentioned in "man bootparam" - all die saying "RAMDISK: incomplete write (-28 != 32768) 8388608" (and errno 28 is "No space left on device") M -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]