Ensure all inode free callbacks have completed before
destroying the inode slab cache.

Fixes: 5ef3208e3be5 ("erofs: introduce the page cache share feature")
Cc: Hongbo Li <[email protected]>
Signed-off-by: Gao Xiang <[email protected]>
---
 fs/erofs/super.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/erofs/super.c b/fs/erofs/super.c
index 802add6652fd..579443e6acfe 100644
--- a/fs/erofs/super.c
+++ b/fs/erofs/super.c
@@ -1048,11 +1048,11 @@ static int __init erofs_module_init(void)
 static void __exit erofs_module_exit(void)
 {
        unregister_filesystem(&erofs_fs_type);
+       erofs_exit_ishare();
 
-       /* Ensure all RCU free inodes / pclusters are safe to be destroyed. */
+       /* ensure all delayed rcu free inodes & pclusters are flushed */
        rcu_barrier();
 
-       erofs_exit_ishare();
        erofs_exit_sysfs();
        z_erofs_exit_subsystem();
        erofs_exit_shrinker();
-- 
2.43.5


Reply via email to