aboutsummaryrefslogtreecommitdiffstats
path: root/fs/hfsplus/catalog.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/hfsplus/catalog.c')
-rw-r--r--fs/hfsplus/catalog.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/fs/hfsplus/catalog.c b/fs/hfsplus/catalog.c
index 8af45fc5b051..0aa40b36a9e7 100644
--- a/fs/hfsplus/catalog.c
+++ b/fs/hfsplus/catalog.c
@@ -227,7 +227,8 @@ int hfsplus_create_cat(u32 cnid, struct inode *dir, struct qstr *str, struct ino
227 227
228 dir->i_size++; 228 dir->i_size++;
229 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 229 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC;
230 mark_inode_dirty(dir); 230 hfsplus_mark_inode_dirty(dir, HFSPLUS_I_CAT_DIRTY);
231
231 hfs_find_exit(&fd); 232 hfs_find_exit(&fd);
232 return 0; 233 return 0;
233 234
@@ -308,7 +309,7 @@ int hfsplus_delete_cat(u32 cnid, struct inode *dir, struct qstr *str)
308 309
309 dir->i_size--; 310 dir->i_size--;
310 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 311 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC;
311 mark_inode_dirty(dir); 312 hfsplus_mark_inode_dirty(dir, HFSPLUS_I_CAT_DIRTY);
312out: 313out:
313 hfs_find_exit(&fd); 314 hfs_find_exit(&fd);
314 315
@@ -353,7 +354,6 @@ int hfsplus_rename_cat(u32 cnid,
353 goto out; 354 goto out;
354 dst_dir->i_size++; 355 dst_dir->i_size++;
355 dst_dir->i_mtime = dst_dir->i_ctime = CURRENT_TIME_SEC; 356 dst_dir->i_mtime = dst_dir->i_ctime = CURRENT_TIME_SEC;
356 mark_inode_dirty(dst_dir);
357 357
358 /* finally remove the old entry */ 358 /* finally remove the old entry */
359 hfsplus_cat_build_key(sb, src_fd.search_key, src_dir->i_ino, src_name); 359 hfsplus_cat_build_key(sb, src_fd.search_key, src_dir->i_ino, src_name);
@@ -365,7 +365,6 @@ int hfsplus_rename_cat(u32 cnid,
365 goto out; 365 goto out;
366 src_dir->i_size--; 366 src_dir->i_size--;
367 src_dir->i_mtime = src_dir->i_ctime = CURRENT_TIME_SEC; 367 src_dir->i_mtime = src_dir->i_ctime = CURRENT_TIME_SEC;
368 mark_inode_dirty(src_dir);
369 368
370 /* remove old thread entry */ 369 /* remove old thread entry */
371 hfsplus_cat_build_key(sb, src_fd.search_key, cnid, NULL); 370 hfsplus_cat_build_key(sb, src_fd.search_key, cnid, NULL);
@@ -387,6 +386,9 @@ int hfsplus_rename_cat(u32 cnid,
387 goto out; 386 goto out;
388 } 387 }
389 err = hfs_brec_insert(&dst_fd, &entry, entry_size); 388 err = hfs_brec_insert(&dst_fd, &entry, entry_size);
389
390 hfsplus_mark_inode_dirty(dst_dir, HFSPLUS_I_CAT_DIRTY);
391 hfsplus_mark_inode_dirty(src_dir, HFSPLUS_I_CAT_DIRTY);
390out: 392out:
391 hfs_bnode_put(dst_fd.bnode); 393 hfs_bnode_put(dst_fd.bnode);
392 hfs_find_exit(&src_fd); 394 hfs_find_exit(&src_fd);