Messages in this thread | | | Date | Wed, 19 Oct 2005 13:00:10 -0700 | From | Andrew Morton <> | Subject | Re: Is ext3 flush data to disk when files are closed? |
| |
Badari Pulavarty <pbadari@gmail.com> wrote: > > On Wed, 2005-10-19 at 11:31 -0400, Xin Zhao wrote: > > As far as I know, if an application modifies a file on an ext3 file > > ssytem, it actually change the page cache, and the dirty pages will be > > flushed to disk by kupdate periodically. > > > > My question is: if a file is to be closed, but some of its data pages > > are marked as dirty, will system block on close() and wait for dirty > > pages being flushed to disk? If so, it seems to decrease performance > > significantly if a lot of updates on many small files are involved. > > > > Can someone point me to the right place to check how it works? Thanks! > > On the last close() of the file, it should be flushed through .. > > iput_final() -> generic_drop_inode() -> write_inode_now() > -> __writeback_single_inode() -> __sync_single_inode() > -> do_writepages()
The dcache's reference to the inode will prevent this from happening at close() time.
- 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/
| |