diff options
Diffstat (limited to 'fs/nilfs2')
-rw-r--r-- | fs/nilfs2/inode.c | 8 | ||||
-rw-r--r-- | fs/nilfs2/super.c | 10 | ||||
-rw-r--r-- | fs/nilfs2/the_nilfs.h | 2 |
3 files changed, 10 insertions, 10 deletions
diff --git a/fs/nilfs2/inode.c b/fs/nilfs2/inode.c index 6e2c3db976b2..4d31d2cca7fd 100644 --- a/fs/nilfs2/inode.c +++ b/fs/nilfs2/inode.c | |||
@@ -401,8 +401,8 @@ int nilfs_read_inode_common(struct inode *inode, | |||
401 | int err; | 401 | int err; |
402 | 402 | ||
403 | inode->i_mode = le16_to_cpu(raw_inode->i_mode); | 403 | inode->i_mode = le16_to_cpu(raw_inode->i_mode); |
404 | inode->i_uid = (uid_t)le32_to_cpu(raw_inode->i_uid); | 404 | i_uid_write(inode, le32_to_cpu(raw_inode->i_uid)); |
405 | inode->i_gid = (gid_t)le32_to_cpu(raw_inode->i_gid); | 405 | i_gid_write(inode, le32_to_cpu(raw_inode->i_gid)); |
406 | set_nlink(inode, le16_to_cpu(raw_inode->i_links_count)); | 406 | set_nlink(inode, le16_to_cpu(raw_inode->i_links_count)); |
407 | inode->i_size = le64_to_cpu(raw_inode->i_size); | 407 | inode->i_size = le64_to_cpu(raw_inode->i_size); |
408 | inode->i_atime.tv_sec = le64_to_cpu(raw_inode->i_mtime); | 408 | inode->i_atime.tv_sec = le64_to_cpu(raw_inode->i_mtime); |
@@ -590,8 +590,8 @@ void nilfs_write_inode_common(struct inode *inode, | |||
590 | struct nilfs_inode_info *ii = NILFS_I(inode); | 590 | struct nilfs_inode_info *ii = NILFS_I(inode); |
591 | 591 | ||
592 | raw_inode->i_mode = cpu_to_le16(inode->i_mode); | 592 | raw_inode->i_mode = cpu_to_le16(inode->i_mode); |
593 | raw_inode->i_uid = cpu_to_le32(inode->i_uid); | 593 | raw_inode->i_uid = cpu_to_le32(i_uid_read(inode)); |
594 | raw_inode->i_gid = cpu_to_le32(inode->i_gid); | 594 | raw_inode->i_gid = cpu_to_le32(i_gid_read(inode)); |
595 | raw_inode->i_links_count = cpu_to_le16(inode->i_nlink); | 595 | raw_inode->i_links_count = cpu_to_le16(inode->i_nlink); |
596 | raw_inode->i_size = cpu_to_le64(inode->i_size); | 596 | raw_inode->i_size = cpu_to_le64(inode->i_size); |
597 | raw_inode->i_ctime = cpu_to_le64(inode->i_ctime.tv_sec); | 597 | raw_inode->i_ctime = cpu_to_le64(inode->i_ctime.tv_sec); |
diff --git a/fs/nilfs2/super.c b/fs/nilfs2/super.c index 6522cac6057c..3c991dc84f2f 100644 --- a/fs/nilfs2/super.c +++ b/fs/nilfs2/super.c | |||
@@ -676,17 +676,13 @@ static const struct super_operations nilfs_sops = { | |||
676 | .alloc_inode = nilfs_alloc_inode, | 676 | .alloc_inode = nilfs_alloc_inode, |
677 | .destroy_inode = nilfs_destroy_inode, | 677 | .destroy_inode = nilfs_destroy_inode, |
678 | .dirty_inode = nilfs_dirty_inode, | 678 | .dirty_inode = nilfs_dirty_inode, |
679 | /* .write_inode = nilfs_write_inode, */ | ||
680 | /* .drop_inode = nilfs_drop_inode, */ | ||
681 | .evict_inode = nilfs_evict_inode, | 679 | .evict_inode = nilfs_evict_inode, |
682 | .put_super = nilfs_put_super, | 680 | .put_super = nilfs_put_super, |
683 | /* .write_super = nilfs_write_super, */ | ||
684 | .sync_fs = nilfs_sync_fs, | 681 | .sync_fs = nilfs_sync_fs, |
685 | .freeze_fs = nilfs_freeze, | 682 | .freeze_fs = nilfs_freeze, |
686 | .unfreeze_fs = nilfs_unfreeze, | 683 | .unfreeze_fs = nilfs_unfreeze, |
687 | .statfs = nilfs_statfs, | 684 | .statfs = nilfs_statfs, |
688 | .remount_fs = nilfs_remount, | 685 | .remount_fs = nilfs_remount, |
689 | /* .umount_begin */ | ||
690 | .show_options = nilfs_show_options | 686 | .show_options = nilfs_show_options |
691 | }; | 687 | }; |
692 | 688 | ||
@@ -1386,6 +1382,12 @@ static void nilfs_segbuf_init_once(void *obj) | |||
1386 | 1382 | ||
1387 | static void nilfs_destroy_cachep(void) | 1383 | static void nilfs_destroy_cachep(void) |
1388 | { | 1384 | { |
1385 | /* | ||
1386 | * Make sure all delayed rcu free inodes are flushed before we | ||
1387 | * destroy cache. | ||
1388 | */ | ||
1389 | rcu_barrier(); | ||
1390 | |||
1389 | if (nilfs_inode_cachep) | 1391 | if (nilfs_inode_cachep) |
1390 | kmem_cache_destroy(nilfs_inode_cachep); | 1392 | kmem_cache_destroy(nilfs_inode_cachep); |
1391 | if (nilfs_transaction_cachep) | 1393 | if (nilfs_transaction_cachep) |
diff --git a/fs/nilfs2/the_nilfs.h b/fs/nilfs2/the_nilfs.h index 6eee4177807b..be1267a34cea 100644 --- a/fs/nilfs2/the_nilfs.h +++ b/fs/nilfs2/the_nilfs.h | |||
@@ -107,8 +107,6 @@ struct the_nilfs { | |||
107 | * used for | 107 | * used for |
108 | * - loading the latest checkpoint exclusively. | 108 | * - loading the latest checkpoint exclusively. |
109 | * - allocating a new full segment. | 109 | * - allocating a new full segment. |
110 | * - protecting s_dirt in the super_block struct | ||
111 | * (see nilfs_write_super) and the following fields. | ||
112 | */ | 110 | */ |
113 | struct buffer_head *ns_sbh[2]; | 111 | struct buffer_head *ns_sbh[2]; |
114 | struct nilfs_super_block *ns_sbp[2]; | 112 | struct nilfs_super_block *ns_sbp[2]; |