Messages in this thread | | | Date | Tue, 27 Jul 2010 13:09:03 -0400 | From | Christoph Hellwig <> | Subject | Re: [PATCH 1/3] bdi: Use parent filesystem BDI for inodes not capable of writeback |
| |
> +static struct backing_dev_info *inode_to_bdi(struct inode *inode) > +{ > + struct backing_dev_info *bdi = inode->i_mapping->backing_dev_info; > + > + /* > + * This is a hack but it solves a problem with device inode > + * for e.g. /dev/zero getting dirty (via touch or so) and confusing > + * writeback code. In such cases we return the "parent" filesystem's > + * bdi. > + */ > + if (bdi_cap_writeback_dirty(bdi)) > + return bdi; > + return inode->i_sb->s_bdi;
When do we ever have a writeback-capable bdi that sits inside another filesystem? I think just always using inode->i_sb->s_bdi is the right thing here.
And btw, having a BDI_CAP_NO_WRITEBACK instead of a BDI_CAP_WRITEBACK is rather dumb, we'd better fix it up while we're at it.
| |