I was looking at some code to deal with sync (eg. sys_fsync(fd)). Generally, sync is performed by calling filemap_fdatasync(...) which does writepage() on pages in the dirty list of the inode, and then using filemap_fdatawait to wait on the I/O's started by the writepage's. Consider writepage() on a (partial) page containing EOF. In this case, prepare_write/commit_write is employed to write the page out. However, commit_write will only mark the buffer dirty, and not actually start the I/O. Subsequently, either memory pressure (page_launder) or write pressure (flush_dirty_buffers) will start the I/O on the EOF-page. So, it appears that filemap_fdatawait will be delayed. I'm just wondering if this argument is correct ... -- -------------------------------------------------------------------------- Rajagopal Ananthanarayanan ("ananth") Member Technical Staff, SGI. -------------------------------------------------------------------------- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/