summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Marangi2025-11-20 22:40:00 +0000
committerChristian Marangi2025-11-20 22:42:12 +0000
commit91a9fb746045e5a175948154784e4a21c2a36ed1 (patch)
tree13547b13ca294ee08fe3f574e48101191a469341
parentd21262edcfa22f468ca3ac94e8cdab3d411f0916 (diff)
downloadopenwrt-91a9fb746045e5a175948154784e4a21c2a36ed1.tar.gz
Revert "kernel: mtdsplit_minor: return 0 if not fatal"
This reverts commit ade045084bd3f86969eaf0b35234aaa01e430fe1. Skipping parser for subpartition will be handled now with -ENOENT. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
-rw-r--r--target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_minor.c38
1 files changed, 12 insertions, 26 deletions
diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_minor.c b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_minor.c
index 053cba6272..f16a00e00e 100644
--- a/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_minor.c
+++ b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_minor.c
@@ -63,44 +63,30 @@ static int mtdsplit_parse_minor(struct mtd_info *master,
hdr_len = sizeof(hdr);
err = mtd_read(master, 0, hdr_len, &retlen, (void *) &hdr);
- if (err) {
- pr_err("MiNOR mtd_read error: %d\n", err);
+ if (err)
return err;
- }
- if (retlen != hdr_len) {
- pr_err("MiNOR mtd_read too short\n");
+ if (retlen != hdr_len)
return -EIO;
- }
/* match header */
- if (hdr.yaffs_type != YAFFS_OBJECT_TYPE_FILE) {
- pr_info("MiNOR YAFFS first type not matched\n");
- return 0;
- }
+ if (hdr.yaffs_type != YAFFS_OBJECT_TYPE_FILE)
+ return -EINVAL;
- if (hdr.yaffs_obj_id != YAFFS_OBJECTID_ROOT) {
- pr_info("MiNOR YAFFS first objectid not matched\n");
- return 0;
- }
+ if (hdr.yaffs_obj_id != YAFFS_OBJECTID_ROOT)
+ return -EINVAL;
- if (hdr.yaffs_sum_unused != YAFFS_SUM_UNUSED) {
- pr_info("MiNOR YAFFS first sum not matched\n");
- return 0;
- }
+ if (hdr.yaffs_sum_unused != YAFFS_SUM_UNUSED)
+ return -EINVAL;
if ((memcmp(hdr.yaffs_name, YAFFS_NAME_KERNEL, sizeof(YAFFS_NAME_KERNEL))) &&
- (memcmp(hdr.yaffs_name, YAFFS_NAME_BOOTIMAGE, sizeof(YAFFS_NAME_BOOTIMAGE)))) {
- pr_info("MiNOR YAFFS first name not matched\n");
- return 0;
- }
+ (memcmp(hdr.yaffs_name, YAFFS_NAME_BOOTIMAGE, sizeof(YAFFS_NAME_BOOTIMAGE))))
+ return -EINVAL;
err = mtd_find_rootfs_from(master, master->erasesize, master->size,
&rootfs_offset, NULL);
- if (err) {
- pr_info("MiNOR mtd_find_rootfs_from error: %d\n", err);
- return 0;
- }
+ if (err)
+ return err;
parts = kzalloc(MINOR_NR_PARTS * sizeof(*parts), GFP_KERNEL);
if (!parts)