[Cluster-devel] [PATCH] GFS2: dirty inode correctly in gfs2_write_end
Bob Peterson
rpeterso at redhat.com
Wed Sep 4 13:24:59 UTC 2013
----- 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 at redhat.com>
Hi,
ACK
Bob Peterson
Red Hat File Systems
More information about the Cluster-devel
mailing list