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

Reply via email to