[OpenWrt-Devel] [PATCH] mtd: correct/change warning text about partition split / read-only status

Hannu Nyman hannu.nyman at iki.fi
Sun May 10 11:59:47 EDT 2015


mtd: remove the warning about read-only caused by size vs. block boundary 
mismatch

patch version 2 as requested by nbd.

Since the kernel/rootfs split handling was modified 2 years ago by r37283 ( 
https://dev.openwrt.org/changeset/37283 ) and by the subsequent checkins, 
users have seen rather scary mtd errors in the log at every boot. The message 
ends "-- forcing read-only", which looks a bit error-like. That error has 
been mentioned in some forum threads, when users have noticed this message 
instead of some actual error.

[    2.940000] 0x000000070000-0x000000ff0000 : "firmware"
[    2.970000] 2 netgear-fw partitions found on MTD device firmware
[    2.970000] 0x000000070000-0x000000188440 : "kernel"
[    2.980000] mtd: partition "kernel" must either start or end on erase 
block boundary or be smaller than an erase block -- forcing read-only
[    2.990000] 0x000000188440-0x000000ff0000 : "rootfs"

The patch removes the rather useless warning message.

signed-off-by: Hannu Nyman <hannu.nyman at iki.fi>
---

On 10.5.2015 14:39, Felix Fietkau wrote:
> I think this message is quite pointless anyway, so I'd prefer to simply
> have it removed instead of changing it.
>
> - Felix
>

-------------- next part --------------
Index: target/linux/generic/patches-3.18/411-mtd-partial_eraseblock_write.patch
===================================================================
--- target/linux/generic/patches-3.18/411-mtd-partial_eraseblock_write.patch	(revision 45667)
+++ target/linux/generic/patches-3.18/411-mtd-partial_eraseblock_write.patch	(working copy)
@@ -97,7 +97,7 @@
  		if (instr->fail_addr != MTD_FAIL_ADDR_UNKNOWN)
  			instr->fail_addr -= part->offset;
  		instr->addr -= part->offset;
-@@ -514,18 +582,24 @@ static struct mtd_part *allocate_partiti
+@@ -514,18 +582,21 @@ static struct mtd_part *allocate_partiti
  	if ((slave->mtd.flags & MTD_WRITEABLE) &&
  	    mtd_mod_by_eb(slave->offset, &slave->mtd)) {
  		/* Doesn't start on a boundary of major erase size */
@@ -125,9 +125,6 @@
 +		else
 +			slave->mtd.erasesize = slave->mtd.size;
  	}
-+	if ((slave->mtd.flags & (MTD_ERASE_PARTIAL|MTD_WRITEABLE)) == MTD_ERASE_PARTIAL)
-+		printk(KERN_WARNING"mtd: partition \"%s\" must either start or end on erase block boundary or be smaller than an erase block -- forcing read-only\n",
-+				part->name);
  
  	slave->mtd.ecclayout = master->ecclayout;
  	slave->mtd.ecc_step_size = master->ecc_step_size;
Index: target/linux/generic/patches-4.0/411-mtd-partial_eraseblock_write.patch
===================================================================
--- target/linux/generic/patches-4.0/411-mtd-partial_eraseblock_write.patch	(revision 45667)
+++ target/linux/generic/patches-4.0/411-mtd-partial_eraseblock_write.patch	(working copy)
@@ -97,7 +97,7 @@
  		if (instr->fail_addr != MTD_FAIL_ADDR_UNKNOWN)
  			instr->fail_addr -= part->offset;
  		instr->addr -= part->offset;
-@@ -513,18 +581,24 @@ static struct mtd_part *allocate_partiti
+@@ -513,18 +581,21 @@ static struct mtd_part *allocate_partiti
  	if ((slave->mtd.flags & MTD_WRITEABLE) &&
  	    mtd_mod_by_eb(slave->offset, &slave->mtd)) {
  		/* Doesn't start on a boundary of major erase size */
@@ -125,9 +125,6 @@
 +		else
 +			slave->mtd.erasesize = slave->mtd.size;
  	}
-+	if ((slave->mtd.flags & (MTD_ERASE_PARTIAL|MTD_WRITEABLE)) == MTD_ERASE_PARTIAL)
-+		printk(KERN_WARNING"mtd: partition \"%s\" must either start or end on erase block boundary or be smaller than an erase block -- forcing read-only\n",
-+				part->name);
  
  	slave->mtd.ecclayout = master->ecclayout;
  	slave->mtd.ecc_step_size = master->ecc_step_size;
-------------- next part --------------
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list