[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [microblaze-uclinux] [PATCH] microblaze: fix uClinux romfs corruption
On Tue, May 19, 2009 at 5:18 AM, Steve Magnani <steve@xxxxxxxxxxxxxxx> wrote:
> I'm not sure I understand the alternative. I've spent most of the last
> week tracking down why my CRAMFS wouldn't mount/boot and traced it back
> to this set of code. If there are kernel command line or configuration
> parameters I can use to fix this problem I would appreciate a pointer in
> the right direction.
> * Re: machine_early_init(): the -rc6 ordering of the code clearly blanks
> out a ROMFS that abuts _ebss. I don't see how reordering the code has an
> effect on ramfs.
Steve's correct here. If you are using MTD_UCLINUX then the romfs
image is actually sitting in memory at _sbss. You have to move it out
of the way up to ebss *before* clearing the BSS segment.
> * Re: paging_init(): the -rc6 code clearly puts the bootmem map at __end
> (== _ebss) which does not consider klimit adjustments made in
> machine_early_init() - again, resulting in ROMFS corruption. I suppose a
> smaller patch would be to change '_end' to 'klimit' rather than switching
> to lmb_alloc(). The code in the patch was adapted from that in powerpc.
Right. Again I think this is the right approach.
Actually, the truly best approach would probably be to retire the
MTD_UCLINUX hacks once and for all. But, they are a convenient way of
bundling a kernel with a rootfs. My thinking is shifting towards
using initramfs as a better way to do this, but that may not be for
Thanks for your eyeballs on this new kernel Steve, it's great to have
some other people checking the details!
John Williams, PhD, B.Eng, B.IT
PetaLogix - Linux Solutions for a Reconfigurable World
w: www.petalogix.com p: +61-7-30090663 f: +61-7-30090663
microblaze-uclinux mailing list
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/