Help - Search - Members - Calendar
Full Version: Yet Another Broken C3000
OESF Forums > Distros, Development, and Model Specific Forums > Model Specific Forums > C1000/3x00 General discussions
Stilgar
I do apologize for the long post. I have tried many things (detailed here) before asking help from this forum. At the moment (after 2 days of fiddling), there are many threads to the story. I will, however, try to make it short.

The zaurus wouldn't boot (with misc. kernel patnics) a few days ago. Figuring out I couldn't debug it, I tried getting into rescue mode with the updater.sh.rescue (an old-time friend).
That's where I had a surprise waiting. The CF card would not be recognized by the updater menu (Holding OK while powering on, then 4->1->Y). It would yell something about missing CF card and then rebooting.

Right. There's the D+B rescue boot console. Boots pretty well, except for one (not surprising by now) thing: the /sbin/cardmgr would output an error message (something like encountering an unexpected word or ")".).
Then, I could not access /dev/hdc, even for backup purpose. I'd get the error that block-major-3 is missing (as well as block-major-22 on /dev/hda). Great.

Obviously, something was wrong with the rescue boot rootfs. I could not flash a new kernel/distro, as the CF card would not be recognized by the updater (Which uses the emergency rootfs to boot when upgrading).
Using an SD card was an obvious solution along the way. However, when I use it, the updater is yelling misc messages about /var/lib/pcmcia/stab missing (which may be correct, since it's using the rescue rootfs, which is somewhat broken).

Booting again into the rescue rootfs and diagnosing things a bit, I found out that /sbin/cardmgr is broken! it's md5sum with an old version of cardmgr was different. Moreover, mounting /dev/mtdblock2 and copying cardmgr from there to /sbin/cardmgr on the rescue rootfs and then restarting pcmcia, works.
However, /dev/root on the rescue partition is /dev/ram0 -> the kernel is extracted dynamically from the rom (mtdblock1 maybe?) to the ram.

Right now, my ROM (cacko 1.23b) wouldn't boot, due to misc kernel panics, and I am unable to upgrade to any other distro (or even sharp's original rom) because the rootfs is fucked up.
What I'd like to know, is that:
1. Wouldn't a NAND restore will rewrite /dev/mtdblock1 ?
2. Is the rootfs actually taken from mtdblock1?
3. Fortunately, I have a backup of mtdblock1 I manually made after some previous restore. I would like to copy it (via dd) to /dev/mtdblock1 on my Z. However, I am unable to mount it (via loopback interface) to check what's inside and see if there I have a correct version of cardmgr. Does anyone know about the image structure of /dev/mtdblock1?

I will appreciate any help.
Stilgar
Some serious advancments, still not complete:
I've had bad rootfs, so /sbin/cardmgr would fail to run. No update was possible.
Until... I took updater.sh from OZ, decoded it, and added to the beginning a few lines to copy cardmgr from mtdblock2's sbin to /sbin, then continue with the flashing.
It segfaults somewhere, but that's a progress. If anyone has ideas on how to continue, let me know.
Meanie
QUOTE(Stilgar @ May 10 2006, 08:37 AM)
Some serious advancments, still not complete:
I've had bad rootfs, so /sbin/cardmgr would fail to run. No update was possible.
Until... I took updater.sh from OZ, decoded it, and added to the beginning a few lines to copy cardmgr from mtdblock2's sbin to /sbin, then continue with the flashing.
It segfaults somewhere, but that's a progress. If anyone has ideas on how to continue, let me know.
*



ouch!

mtdblock1 is used by the emergency console with a limited rootfs
mtdblock2 is the normal rootfs
mtdblock3 is the home partition
Stilgar
Does anyone know where I can find out the NAND rom layout?
I specifically try to get the initrd for the rescue mode boot.
Meanie
QUOTE(Stilgar @ May 10 2006, 07:26 PM)
Does anyone know where I can find out the NAND rom layout?
I specifically try to get the initrd for the rescue mode boot.
*


why dont you just restore the nand and backup images from trisoft to get you a working system? use D+M
iamasmith
QUOTE(Meanie @ May 10 2006, 10:05 AM)
,,
why dont you just restore the nand and backup images from trisoft to get you a working system? use D+M


This suggestion is the most useful approach since it will restore not only the root file system but also the emergency Linux system accessable via the D+B boot sequence. It will not restore contents of the hard drive if they are corrupt but at least it is a starting point.

-Andy
Cresho
well, have you noticed any difference in audible aspect of it? Does it sound any different? yeah i know i know its not audible but sometimes you can get a glimps of the hardisk sound. Have you tried yanking it out, and wiping the disk and also doing a head integrety check? how about the D+M, have you used the tools in it to check the hardisk read write and also other tests? I would do that first before deciding to try and partition and install anything else on it.

Dude, if you lived around the los angeles area, i can fix it for you for free smile.gif minus hardisk replacement.
Stilgar
As for restoring NAND - tried that several times, both from the original Sharp's rom as well as a backup I made some time ago. The NAND restore itself worked (my backup had a different kernel, so I know it worked) but I still get the same errors. (cardmgr on boot says something like 'word unexpected').
I did have a partial success - I took the updater.sh from OZ 3.5.4.1-rc2, and added a script that replaces /sbin/cardmgr with the one from mtdblock2's /sbin. However, now the error is the kernel segfaulting somewhere when writing to the microdrive. I do not know why this is, as the R/W tests in the D+M menu do not tell of any HD error.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2014 Invision Power Services, Inc.