On 07/05/15 14:49, Felix Fietkau wrote:
On 2015-05-07 08:01, Wojciech Dubowik wrote:
Try to boot with kernel locking enabled. I have seen jffs2 deadlocks on
readdir. As far as I remember
with this patch it went through but I don't know anymore whether I have
changed sth in config.

Have a look at (search engine...) [PATCH] fs: jffs2: Add setup code for
spi nor flash.

Even with this patch I got some possible dead lock warnings so it might
be just a partial cure. BTW it's
a bit scary for future use. Looks like jffs2 doesn't get enough care...
I believe the locking issues are an overlayfs regression, maybe even
the same one as this one (which I fixed years ago):
http://linux-fsdevel.vger.kernel.narkive.com/XRtXLDlf/patch-1-2-overlayfs-fix-a-deadlock-in-ovl-dir-read-merged

I believe this is the cause of the regression:

commit 49c21e1cacd74a8c83407c70ad860c994e606e25
Author: Miklos Szeredi <mszer...@suse.cz>
Date:   Sat Dec 13 00:59:42 2014 +0100

     ovl: check whiteout while reading directory
Don't make a separate pass for checking whiteouts, since we can do it while
     reading the upper directory.
This will make it easier to handle multiple layers. Signed-off-by: Miklos Szeredi <mszer...@suse.cz>

It probably happens like this:
overlayfs does a readdir, in which jffs2 takes a lock.
 From within the readdir fill callback, it calls lookup_one_len, which
ends up back in jffs2 and tries to take the same lock again.
=> deadlock.
This is exactly what I have seen. I have got deadlocks on readdir. Unfortunately I don't have any logs saved...

Wojtek

- Felix
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to