Messages in this thread | | | Date | Fri, 23 Apr 2010 12:05:32 +0200 | From | Jens Axboe <> | Subject | Re: [Patch] Catch filesystems lacking s_bdi |
| |
On Thu, Apr 22 2010, Jörn Engel wrote: > On Thu, 22 April 2010 18:27:10 +0200, Jens Axboe wrote: > > > > > Jens - please help fix this up. > > > > Of course, I already posted a series of patches to fix this up. I want > > to test them a bit, and I'll send them in tomorrow. > > How about something like this to catch future cases? It compiles and > survived a test boot, so it does seem to work for the common cases like > tmpfs, procfs, etc. > > Jens, you know the bdi code 10x better than me, would this work?
Looks sane, it's a good start. I think we should augment that with a check to ensure that we don't ever add dirty inodes to this bdi, since it's not going to be flushed.
Something like a:
WARN_ON(bdi == &noop_backing_dev_info);
to __mark_inode_dirty(). Looking at the code it should already trigger a warning, since it'll check for BDI_CAP_NO_WRITEBACK (which isn't set for noop_backing_dev_info) and the fact that noop-bdi isn't registered to begin with.
So it's probably safe and good enough as-is, I'll add it. Thanks!
-- Jens Axboe
-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |