[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [Cluster-devel] [PATCH] GFS2: dirty inode correctly in gfs2_write_end

----- Original Message -----
| GFS2 was only setting I_DIRTY_DATASYNC on files that it wrote to, when
| it actually increased the file size.  If gfs2_fsync was called without
| I_DIRTY_DATASYNC set, it didn't flush the incore data to the log before
| returning, so any metadata or journaled data changes were not getting
| fsynced. This meant that writes to the middle of files were not always
| getting fsynced properly.
| This patch makes gfs2 set I_DIRTY_DATASYNC whenever metadata has been
| updated during a write. It also make gfs2_sync flush the incore log
| if I_DIRTY_PAGES is set, and the file is using data journalling. This
| will make sure that all incore logged data gets written to disk before
| returning from a fsync.
| Signed-off-by: Benjamin Marzinski <bmarzins redhat com>



Bob Peterson
Red Hat File Systems

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]