fs-writeback: unplug before cond_resched in writeback_sb_inodes
[firefly-linux-kernel-4.4.55.git] / fs / super.c
index 767b1e10f6ad3277918f0cd1fb69ddef1a24ea00..954aeb80e202be0a40fc42eeca465c033ab1fc9a 100644 (file)
@@ -203,7 +203,9 @@ static struct super_block *alloc_super(struct file_system_type *type, int flags)
        s->s_flags = flags;
        INIT_HLIST_NODE(&s->s_instances);
        INIT_HLIST_BL_HEAD(&s->s_anon);
+       mutex_init(&s->s_sync_lock);
        INIT_LIST_HEAD(&s->s_inodes);
+       spin_lock_init(&s->s_inode_list_lock);
 
        if (list_lru_init_memcg(&s->s_dentry_lru))
                goto fail;
@@ -412,7 +414,7 @@ void generic_shutdown_super(struct super_block *sb)
                sync_filesystem(sb);
                sb->s_flags &= ~MS_ACTIVE;
 
-               fsnotify_unmount_inodes(&sb->s_inodes);
+               fsnotify_unmount_inodes(sb);
 
                evict_inodes(sb);