[PATCH] f2fs: make exit_f2fs_fs more clear
init_f2fs_fs does: 1) f2fs_build_trace_ios 2) init_inodecache 3) create_node_manager_caches 4) create_segment_manager_caches 5) create_checkpoint_caches 6) create_extent_cache 7) kset_create_and_add 8) kobject_init_and_add 9) register_shrinker 10) register_filesystem 11) f2fs_create_root_stats 12) proc_mkdir exit_f2fs_fs should do cleanup in the reverse order to make the code more clear. Signed-off-by: Tiezhu Yang--- fs/f2fs/super.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c index bbfeb6a..741fba1 100644 --- a/fs/f2fs/super.c +++ b/fs/f2fs/super.c @@ -1928,17 +1928,17 @@ static void __exit exit_f2fs_fs(void) { remove_proc_entry("fs/f2fs", NULL); f2fs_destroy_root_stats(); - unregister_shrinker(_shrinker_info); unregister_filesystem(_fs_type); + unregister_shrinker(_shrinker_info); +#ifdef CONFIG_F2FS_FAULT_INJECTION + kobject_put(_fault_inject); +#endif + kset_unregister(f2fs_kset); destroy_extent_cache(); destroy_checkpoint_caches(); destroy_segment_manager_caches(); destroy_node_manager_caches(); destroy_inodecache(); -#ifdef CONFIG_F2FS_FAULT_INJECTION - kobject_put(_fault_inject); -#endif - kset_unregister(f2fs_kset); f2fs_destroy_trace_ios(); } -- 1.8.3.1
[PATCH] f2fs: make exit_f2fs_fs more clear
init_f2fs_fs does: 1) f2fs_build_trace_ios 2) init_inodecache 3) create_node_manager_caches 4) create_segment_manager_caches 5) create_checkpoint_caches 6) create_extent_cache 7) kset_create_and_add 8) kobject_init_and_add 9) register_shrinker 10) register_filesystem 11) f2fs_create_root_stats 12) proc_mkdir exit_f2fs_fs should do cleanup in the reverse order to make the code more clear. Signed-off-by: Tiezhu Yang --- fs/f2fs/super.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c index bbfeb6a..741fba1 100644 --- a/fs/f2fs/super.c +++ b/fs/f2fs/super.c @@ -1928,17 +1928,17 @@ static void __exit exit_f2fs_fs(void) { remove_proc_entry("fs/f2fs", NULL); f2fs_destroy_root_stats(); - unregister_shrinker(_shrinker_info); unregister_filesystem(_fs_type); + unregister_shrinker(_shrinker_info); +#ifdef CONFIG_F2FS_FAULT_INJECTION + kobject_put(_fault_inject); +#endif + kset_unregister(f2fs_kset); destroy_extent_cache(); destroy_checkpoint_caches(); destroy_segment_manager_caches(); destroy_node_manager_caches(); destroy_inodecache(); -#ifdef CONFIG_F2FS_FAULT_INJECTION - kobject_put(_fault_inject); -#endif - kset_unregister(f2fs_kset); f2fs_destroy_trace_ios(); } -- 1.8.3.1