On Thu 19-03-15 23:37:59, Taesoo Kim wrote: > simple_write_end() is for non-block fs, which doesn't invoke > mark_inode_dirty(). Instead, generic_write_end() correctly > handles such case when i_size has changed. > > Signed-off-by: Taesoo Kim <tsgat...@gmail.com> So simple_write_end() is actually correct in that place. We cannot even use generic_write_end() because that page doesn't have buffers attached - it's a special case of a file which is smaller than a block and is packed in the inode. Please test the patch better next time - this would oops on you the first time you try to write to such a file. Thanks!
Honza > --- > fs/udf/file.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/udf/file.c b/fs/udf/file.c > index 08f3555..28b1dab 100644 > --- a/fs/udf/file.c > +++ b/fs/udf/file.c > @@ -112,7 +112,7 @@ const struct address_space_operations udf_adinicb_aops = { > .readpage = udf_adinicb_readpage, > .writepage = udf_adinicb_writepage, > .write_begin = udf_adinicb_write_begin, > - .write_end = simple_write_end, > + .write_end = generic_write_end, > .direct_IO = udf_adinicb_direct_IO, > }; > > -- > 2.3.3 > -- Jan Kara <j...@suse.cz> SUSE Labs, CR -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/