lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 15 Nov 2011 16:07:53 +0800 From: Yongqiang Yang <xiaoqiangnk@...il.com> To: tytso@....edu Cc: linux-ext4@...r.kernel.org, Yongqiang Yang <xiaoqiangnk@...il.com> Subject: [PATCH 4/5] ext4: flush journal when switching from journal data mode When switching from journal data mode, the data blocks in journal will have no revoke record. Thus, data could be corrupted during replay. However, there is no such problem in switching to journal data mode. So we flush journal only in the case that swithes from journal data mode. Signed-off-by: Yongqiang Yang <xiaoqiangnk@...il.com> --- fs/ext4/inode.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index 384f8a7..755f6c7 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c @@ -4689,7 +4689,6 @@ int ext4_change_inode_journal_flag(struct inode *inode, int val) } jbd2_journal_lock_updates(journal); - jbd2_journal_flush(journal); /* * OK, there are no updates running now, and all cached data is @@ -4699,10 +4698,12 @@ int ext4_change_inode_journal_flag(struct inode *inode, int val) * the inode's in-core data-journaling state flag now. */ - if (val) + if (val) { ext4_set_inode_flag(inode, EXT4_INODE_JOURNAL_DATA); - else + } else { + jbd2_journal_flush(journal); ext4_clear_inode_flag(inode, EXT4_INODE_JOURNAL_DATA); + } ext4_set_aops(inode); jbd2_journal_unlock_updates(journal); -- 1.7.5.1 -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists