summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Altaparmakov <aia21@cantab.net>2006-03-23 17:21:02 +0100
committerAnton Altaparmakov <aia21@cantab.net>2006-03-23 17:21:02 +0100
commit20fdcf1d543b1285ef8b1c1993a9221f2eda52dc (patch)
tree476002aa4a3af68a5986ac38c51ab0f083d6c520
parentNTFS: Fix a bug in fs/ntfs/inode.c::ntfs_read_locked_index_inode() where we (diff)
downloadlinux-20fdcf1d543b1285ef8b1c1993a9221f2eda52dc.tar.xz
linux-20fdcf1d543b1285ef8b1c1993a9221f2eda52dc.zip
NTFS: Add a missing call to flush_dcache_mft_record_page() in
fs/ntfs/inode.c::ntfs_write_inode(). Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
-rw-r--r--fs/ntfs/ChangeLog2
-rw-r--r--fs/ntfs/inode.c9
2 files changed, 8 insertions, 3 deletions
diff --git a/fs/ntfs/ChangeLog b/fs/ntfs/ChangeLog
index 5fb74e62f535..d20031587bbb 100644
--- a/fs/ntfs/ChangeLog
+++ b/fs/ntfs/ChangeLog
@@ -41,6 +41,8 @@ ToDo/Notes:
- Fix a bug in fs/ntfs/inode.c::ntfs_read_locked_index_inode() where we
forgot to update a temporary variable so loading index inodes which
have an index allocation attribute failed.
+ - Add a missing call to flush_dcache_mft_record_page() in
+ fs/ntfs/inode.c::ntfs_write_inode().
2.1.26 - Minor bug fixes and updates.
diff --git a/fs/ntfs/inode.c b/fs/ntfs/inode.c
index 5f4b23d213b9..73791b2d9495 100644
--- a/fs/ntfs/inode.c
+++ b/fs/ntfs/inode.c
@@ -3064,9 +3064,12 @@ int ntfs_write_inode(struct inode *vi, int sync)
* record will be cleaned and written out to disk below, i.e. before
* this function returns.
*/
- if (modified && !NInoTestSetDirty(ctx->ntfs_ino))
- mark_ntfs_record_dirty(ctx->ntfs_ino->page,
- ctx->ntfs_ino->page_ofs);
+ if (modified) {
+ flush_dcache_mft_record_page(ctx->ntfs_ino);
+ if (!NInoTestSetDirty(ctx->ntfs_ino)) {
+ mark_ntfs_record_dirty(ctx->ntfs_ino->page,
+ ctx->ntfs_ino->page_ofs);
+ }
ntfs_attr_put_search_ctx(ctx);
/* Now the access times are updated, write the base mft record. */
if (NInoDirty(ni))