On Mon, 03 Jul 2006 10:31:49 +0900
Hisashi Hifumi <[EMAIL PROTECTED]> wrote:

> When write() extends a file(i_size is increased) and fsync() is called,
> change of inode must be written to journaling area through fsync().
> But,currently the i_trans_id is not correctly updated when i_size
> is increased. So fsync() does not kick the journal writer.
> 
> Reiserfs_file_write() already updates the transaction when blocks are 
> allocated,
> but the case when i_size increases and new blocks are not added is not
> correctly treated.

How can i_size be increased without adding blocks?  Are you referring to a
write which remains wholly within the final block of the file?  And/or to
an expanding lseek?

And what are the user-visible consequences of this bug?

Thanks.

Reply via email to