[PATCH] [MTD] Fix JFFS2 sync silent failure

Jens Axboe jens.axboe at oracle.com
Thu Apr 22 05:03:03 EDT 2010


On Thu, Apr 22 2010, Jörn Engel wrote:
> On Mon, 19 April 2010 12:20:56 +0200, Jens Axboe wrote:
> > 
> > Thanks, we definitely should have put a debug statement to catch this in
> > from day 1, good debugging should be an important part of any new
> > infrastructure.
> 
> Woke up early and had another look at this.  Looks like a much more
> widespread problem.  Based on a quick grep an uncaffeinated brain:
> 
> 9p	no s_bdi
> afs	no s_bdi
> ceph	creates its own s_bdi
> cifs	no s_bdi
> coda	no s_bdi
> ecryptfs no s_bdi
> exofs	no s_bdi
> fuse	creates its own s_bdi?
> gfs2	creates its own s_bdi?
> jffs2	patch exists
> logfs	fixed now
> ncpfs	no s_bdi
> nfs	creates its own s_bdi
> ocfs2	no s_bdi
> smbfs	no s_bdi
> ubifs	creates its own s_bdi
> 
> I excluded all filesystems that appear to be read-only, block device
> based or lack any sort of backing store.  So there is a chance I have
> missed some as well.

It's funky, I was pretty sure there was/is code to set a default bdi for
non-bdev file systems. It appears to be missing, that's not good. So
options include:

- Add the appropriate per-sb bdi for these file systems (right fix), or
- Pre-fill default_backing_dev_info as a fallback ->s_bdi to at least
  ensure that data gets flushed (quick fix)

I'll slap together a set of fixes for this.

-- 
Jens Axboe




More information about the linux-mtd mailing list