populate_rootfs fail
Marco Stornelli
marco.stornelli at coritel.it
Tue Feb 12 23:46:59 EST 2008
jay_chen ha scritto:
> Hello all:
>
> I am using mpc8548, kernel 2.6.14.5, and uboot as boot loader.
> When I upgrade ram from 512MB to 2G, my kernel can't boot anymore.
> (I pass mem=2048M to kernel in uboot now)
>
> It always dies in exec sys_write( ) in populate_rootfs( ).
> I did more tests about this and I found that sys_write( ) could write only
> about 4MB in 2G ram case.
> (My initrd is about 19MB, initrd_start : 0xCE7C7000, initrd_end :
> 0xCFAAF289, initrd_end - initrd_start : 0x012E8289 ==> about 19MB)
> Could anybody give me some hints?
> Is this issue related to the location of "/initrd.image"? Could I control
> it?
> Is there any size limit in ppc arch about ramdisk/initrd?
>
> Thanks for help.
>
> Jay...
>
> void __init populate_rootfs(void)
> {
> char *err;
> ...
> #ifdef CONFIG_BLK_DEV_INITRD
> if (initrd_start) {
> ...
> printk("it isn't (%s); looks like an initrd\n", err);
> fd = sys_open("/initrd.image", O_WRONLY|O_CREAT, 700);
> if (fd >= 0) {
> sys_write(fd, (char *)initrd_start,
> initrd_end - initrd_start);
> sys_close(fd);
> free_initrd();
> }
> }
> #endif
> }
>
> _______________________________________________
> Linuxppc-embedded mailing list
> Linuxppc-embedded at ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-embedded
>
I think can be a problem with the u-boot initrd_high option. Have you
been enabled the highmem support to use 2G of ram, right? You can try to
set this option to 0x30000000.
Marco
More information about the Linuxppc-embedded
mailing list