Hello

On Monday 26 March 2007 22:12, Lin Shen (lshen) wrote:
> I'm using iostat to measure disk reads/writes associated with various
> file operations under Reiser. One thing I noticed and can't explain is
> that every sync() call by itself (not following a write or anything)
> will cause an I/O write. Any ideas?
> 

The I/O write is performed by reiserfs implementation of sync_fs method of 
struct super_operations.
If filesystem is mounted r/w - reiserfs_sync_fs begins a transaction (or joins 
an existing one), journal super block if the transaction has zero length,
closes the transaction and flushes old transactions including the one which was 
just closed. So, if there were no transaction to flush before sync() - 
one transaction of length 1 gets created, closed, committed and flushed. 5 
blocks get written to disk in this case. My calculation can be wrong, though.
How much I/O do you notice? 

> Lin  
> 
> 

Reply via email to