From: Felix Fietkau Date: Sun, 17 Jan 2016 10:41:30 +0000 (+0000) Subject: kernel: mtdsplit_squashfs: Align with the erase-block size X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=commitdiff_plain;hb=82f946977d7a26961166ed38eb1e1cc9dbbcc7fe kernel: mtdsplit_squashfs: Align with the erase-block size On most image types the rootfs ends at an erase-block. However, at least with brnImages this is not the case: while the partitions are aligned with the erase-block size there is a 12 byte footer at the end of the partition which must not be touched by any filesystem. This lead to a rootfs_data partition which was not aligned properly (and thus ended up being readonly): 0x000000480000-0x00000085a800 : "rootfs_data" (128 KiB EB) Signed-off-by: Martin Blumenstingl SVN-Revision: 48263 --- diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_squashfs.c b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_squashfs.c index 3d80e078b5..5329037f09 100644 --- a/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_squashfs.c +++ b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_squashfs.c @@ -49,7 +49,7 @@ mtdsplit_parse_squashfs(struct mtd_info *master, part->name = ROOTFS_SPLIT_NAME; part->offset = mtd_roundup_to_eb(part_offset + squashfs_len, parent_mtd) - part_offset; - part->size = master->size - part->offset; + part->size = mtd_rounddown_to_eb(master->size - part->offset, master); *pparts = part; return 1;