[meta-freescale] Ramdisk booting: EXT4-fs (ram0): bad geometry error.

Yusuf Altıparmak yusufalti1997 at gmail.com
Thu Jan 16 07:09:16 CET 2020


> ------------------------------
>
> Hello
>
> With t1042d4rdb-64b and yocto 2.7 (
> https://source.codeaurora.org/external/qoriq/qoriq-components/yocto-sdk/tree/readme?h=warrior
> ) I am having bad geometry error while booting and U-boot is freezing. I
> declared "setenv intrd_high=0xffffffff" to use large rootfs but I am unable
> to reach root login. Can anyone help me about this situation ?
>
> *Full error console log is here:*
>
> RAMDISK: gzip image found at block 0
> RAMDISK: incomplete write (17195 != 32768)
> write error
> EXT4-fs (ram0): bad geometry: block count 435752 exceeds size of device
> (131072 blocks)
> VFS: Mounted root (ext2 filesystem) on device 1:0.
> devtmpfs: mounted
> Freeing unused kernel memory: 536K
> This architecture does not have kernel memory protection.
> Run /sbin/init as init process
> attempt to access beyond end of device
> ram0: rw=0, want=450632, limit=262144
> Buffer I/O error on dev ram0, logical block 225315, async page read
> attempt to access beyond end of device
> ram0: rw=0, want=454376, limit=262144
> Buffer I/O error on dev ram0, logical block 227187, async page read
> attempt to access beyond end of device
> ram0: rw=0, want=458082, limit=262144
> Buffer I/O error on dev ram0, logical block 229040, async page read
> attempt to access beyond end of device
> ram0: rw=0, want=458084, limit=262144
> Buffer I/O error on dev ram0, logical block 229041, async page read
> Run /etc/init as init process
> attempt to access beyond end of device
> ram0: rw=0, want=456378, limit=262144
> Buffer I/O error on dev ram0, logical block 228188, async page read
> attempt to access beyond end of device
> ram0: rw=0, want=457688, limit=262144
> Buffer I/O error on dev ram0, logical block 228843, async page read
> attempt to access beyond end of device
> ram0: rw=0, want=458086, limit=262144
> Buffer I/O error on dev ram0, logical block 229042, async page read
> Run /bin/init as init process
> attempt to access beyond end of device
> ram0: rw=0, want=457942, limit=262144
> Buffer I/O error on dev ram0, logical block 228970, async page read
> Run /bin/sh as init process
> attempt to access beyond end of device
> ram0: rw=0, want=457942, limit=262144
> Buffer I/O error on dev ram0, logical block 228970, async page read
> Kernel panic - not syncing: No working init found.  Try passing init=
> option to kernel. See Linux Documentation/admin.
> CPU: 3 PID: 1 Comm: swapper/0 Not tainted 4.19.26+gc0c2141 #1
> Call Trace:
> [c0000001f3107c70] [c000000000a69bf4] .dump_stack+0xa8/0xec (unreliable)
> [c0000001f3107d00] [c00000000004b580] .panic+0x12c/0x2e8
> [c0000001f3107db0] [c000000000002464] .kernel_init+0x10c/0x128
> [c0000001f3107e30] [c0000000000009f4] .ret_from_kernel_thread+0x58/0x64
> Rebooting in 180 seconds..
>
> *printenv output:*
>
> baudrate=115200
> bdev=sda3
> bootargs=root=/dev/ram rw console=ttyS0,115200
> bootcmd=setenv bootargs root=/dev/ram rw console=$consoledev,$baudrate
> $othbootargs;bootm e8020000 e9300000 e8800000
> bootdelay=3
> bootfile=uImage
> c=ffe
> consoledev=ttyS0
> eth1addr=00:04:9F:05:B7:B1
> eth2addr=00:04:9F:05:B7:B2
> eth3addr=00:04:9F:05:B7:B3
> eth4addr=00:04:9F:05:B7:B4
> eth5addr=00:04:9f:8e:7b:b4
> ethact=FM1 at DTSEC1
> ethaddr=00:04:9F:05:B7:B0
> ethprime=e1000#0
> fdtaddr=2000000
> fdtfile=uImage-t1042d4rdb.dtb
> fileaddr=2000000
> filesize=9a83
> fman_ucode=eff00000
> gatewayip=192.168.10.4
> hvboot=setenv bootargs console=$consoledev,$baudrate
> config-addr=0xfe8900000;bootm 0xfe8700000 - 0xfe8800000
> hwconfig=fsl_ddr:bank_intlv=cs0_cs1
> initrd_high=0xffffffff
> ipaddr=192.168.10.99
> loadaddr=1000000
> netdev=eth0
> netmask=255.255.255.0
> nfsboot=setenv bootargs root=/dev/nfs rw nfsroot=$serverip:$rootpath
> ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostnar
> nohvboot=tftp 1000000 $dir/$bootfile;tftp 5000000 $dir/$ramdiskfile;tftp
> 2000000 $dir/$fdtfile;setenv bootargs root=/;
> othbootargs=ramdisk_size=1000000
> ramboot=setenv bootargs root=/dev/ram rw console=$consoledev,$baudrate
> $othbootargs;tftp $ramdiskaddr $ramdiskfile;tfr
> ramdisk_size=41943040
> ramdiskaddr=5000000
> ramdiskfile=fsl-image-core-t1042d4rdb.ext2.gz.u-boot
> rootpath=/opt/nfsroot
> serverip=192.168.10.50
> tftpflash=tftpboot $loadaddr $uboot && protect off $ubootaddr +$filesize
> && erase $ubootaddr +$filesize && cp.b $loade
> uboot=u-boot.bin
> ubootaddr=0xeff40000
>
> Environment size: 1871/8188 bytes
>
> *and the commands I used:*
>
> tftp 10000000 uImage--4.19-r0-t1042d4rdb-64b-20200106043637.bin
> tftp 1f000000 t1042d4rdb--4.19-r0-t1042d4rdb-64b-20200106043637.dtb
> tftp 20000000 rootfs.ext2.gz.u-boot
> bootm 10000000 20000000 1f000000
>


What is BLK_DEV_RAM_SIZE set to in the kernel?
>

Hello,
It's set to;
CONFIG_BLK_DEV_RAM_SIZE=131072


More information about the U-Boot mailing list