On 03/28/2017 03:26 PM, Smith, Pieter wrote:
The refactoring in ba019965 eliminated an unneeded call to volume_find() when done() calls jffs2_switch(). Unfortunately the refactoring did not take into account that volume_identify() has side-effects with the mtd driver implementation and a second call to volume_identify() on the same struct volume may render a different result.
AFAIU this is about mtd driver, so volume_identify basically means mtd_volume_identify. Can you do some extra debugging for me and check which exact part of mtd_volume_identify has this side effect? I don't see which part of this function would affect volume identification in further calls. This may be a bit tricky to debug as you can't call volume_identify inside (at least without some recursive check). Can you handle this somehow? I'd like to make sure I understand this bug fully before pushing a fix. Also: which target uses jffs2 with ubi?! _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel