cifs: check if SMB2 PDU size has been padded and suppress the warning
[linux-2.6-microblaze.git] / fs / super.c
index 50728d9..7429588 100644 (file)
@@ -144,6 +144,9 @@ static unsigned long super_cache_count(struct shrinker *shrink,
        total_objects += list_lru_shrink_count(&sb->s_dentry_lru, sc);
        total_objects += list_lru_shrink_count(&sb->s_inode_lru, sc);
 
+       if (!total_objects)
+               return SHRINK_EMPTY;
+
        total_objects = vfs_pressure_ratio(total_objects);
        return total_objects;
 }
@@ -244,10 +247,6 @@ static struct super_block *alloc_super(struct file_system_type *type, int flags,
        INIT_LIST_HEAD(&s->s_inodes_wb);
        spin_lock_init(&s->s_inode_wblist_lock);
 
-       if (list_lru_init_memcg(&s->s_dentry_lru))
-               goto fail;
-       if (list_lru_init_memcg(&s->s_inode_lru))
-               goto fail;
        s->s_count = 1;
        atomic_set(&s->s_active, 1);
        mutex_init(&s->s_vfs_rename_mutex);
@@ -265,6 +264,10 @@ static struct super_block *alloc_super(struct file_system_type *type, int flags,
        s->s_shrink.flags = SHRINKER_NUMA_AWARE | SHRINKER_MEMCG_AWARE;
        if (prealloc_shrinker(&s->s_shrink))
                goto fail;
+       if (list_lru_init_memcg(&s->s_dentry_lru, &s->s_shrink))
+               goto fail;
+       if (list_lru_init_memcg(&s->s_inode_lru, &s->s_shrink))
+               goto fail;
        return s;
 
 fail: