On 2016-08-22 14:06, Daniel Danzberger wrote: > This patch defaults the rootfs to ext4 on the Ubnt Edgerouter. > The Edgerouter Lite is not affacted by this patch. > > Why EXT4 and not squashfs + jiffs ? > ----------------------------------- > The internal mmc flash is badly partitioned. > > Disk /dev/mmcblk0: 3.7 GiB, 3959422976 bytes, 7733248 sectors > Units: sectors of 1 * 512 = 512 bytes > Sector size (logical/physical): 512 bytes / 512 bytes > I/O size (minimum/optimal): 512 bytes / 512 bytes > > Device Boot Start End Sectors Size Id Type > /dev/mmcblk0p1 * 63 17135 17073 8.3M 83 Linux > /dev/mmcblk0p2 17199 149183 131985 64.5M 83 Linux > /dev/mmcblk0p3 149247 2246831 2097585 1G 83 Linux > > block2mtd requires a block size that is a divisor of the device size. > Both p2 and p3 can only be divided by the sector size 512, > but Jiffs won't work with a blocksize of 512 bytes. > > This also fixes a boot hang, when the kernel tries to mount /root. > The old commandline was: block2mtd.block2mtd=/dev/mmcblk0p2,65536,rootfs,15 > > This line caused the following error message and stopped booting: > "block2mtd: erasesize must be a divisor of device size" > > Signed-off-by: Daniel Danzberger <dan...@dd-wrt.com> > --- > target/linux/octeon/image/Makefile | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/target/linux/octeon/image/Makefile > b/target/linux/octeon/image/Makefile > index ab91d06..da0d072 100644 > --- a/target/linux/octeon/image/Makefile > +++ b/target/linux/octeon/image/Makefile > @@ -14,8 +14,9 @@ define Device/Default > KERNEL := kernel-bin | strip-kernel | patch-cmdline > IMAGES := sysupgrade.tar > IMAGE/sysupgrade.tar/squashfs := append-rootfs | pad-rootfs | > sysupgrade-tar rootfs=$$$$@ > + IMAGE/sysupgrade.tar/ext4 := append-rootfs | pad-rootfs | sysupgrade-tar > rootfs=$$$$@ pad-rootfs does not make sense for ext4.
> IMAGE/sysupgrade.tar := sysupgrade-tar > - FILESYSTEMS := squashfs > + FILESYSTEMS := squashfs ext4 > endef > > define Build/strip-kernel > @@ -29,7 +30,7 @@ define Device/generic > endef > TARGET_DEVICES += generic > > -ER_CMDLINE:=-mtdparts=phys_mapped_flash:640k(boot0)ro,640k(boot1)ro,64k(eeprom)ro > block2mtd.block2mtd=/dev/mmcblk0p2,65536,rootfs,15 root=/dev/mtdblock3 > rootfstype=squashfs rootwait > +ER_CMDLINE:=-mtdparts=phys_mapped_flash:640k(boot0)ro,640k(boot1)ro,64k(eeprom)ro > block2mtd.block2mtd=/dev/mmcblk0p3,512,rootfs,15 rootfstype=ext4 > root=/dev/mtdblock3 rootwait This change does not make any sense to me. As far as I know, at least the ER-PRO only ships with 2 partitions on mmc, not 3. - Felix _______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev