diff options
Diffstat (limited to 'fs/dcache.c')
-rw-r--r-- | fs/dcache.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/fs/dcache.c b/fs/dcache.c index 0e73aa0a0e8b..678d39deb607 100644 --- a/fs/dcache.c +++ b/fs/dcache.c | |||
@@ -883,6 +883,11 @@ static int shrink_dcache_memory(int nr, gfp_t gfp_mask) | |||
883 | return (dentry_stat.nr_unused / 100) * sysctl_vfs_cache_pressure; | 883 | return (dentry_stat.nr_unused / 100) * sysctl_vfs_cache_pressure; |
884 | } | 884 | } |
885 | 885 | ||
886 | static struct shrinker dcache_shrinker = { | ||
887 | .shrink = shrink_dcache_memory, | ||
888 | .seeks = DEFAULT_SEEKS, | ||
889 | }; | ||
890 | |||
886 | /** | 891 | /** |
887 | * d_alloc - allocate a dcache entry | 892 | * d_alloc - allocate a dcache entry |
888 | * @parent: parent of entry to allocate | 893 | * @parent: parent of entry to allocate |
@@ -2115,7 +2120,7 @@ static void __init dcache_init(unsigned long mempages) | |||
2115 | dentry_cache = KMEM_CACHE(dentry, | 2120 | dentry_cache = KMEM_CACHE(dentry, |
2116 | SLAB_RECLAIM_ACCOUNT|SLAB_PANIC|SLAB_MEM_SPREAD); | 2121 | SLAB_RECLAIM_ACCOUNT|SLAB_PANIC|SLAB_MEM_SPREAD); |
2117 | 2122 | ||
2118 | set_shrinker(DEFAULT_SEEKS, shrink_dcache_memory); | 2123 | register_shrinker(&dcache_shrinker); |
2119 | 2124 | ||
2120 | /* Hash may have been set up in dcache_init_early */ | 2125 | /* Hash may have been set up in dcache_init_early */ |
2121 | if (!hashdist) | 2126 | if (!hashdist) |
@@ -2160,10 +2165,10 @@ void __init vfs_caches_init(unsigned long mempages) | |||
2160 | mempages -= reserve; | 2165 | mempages -= reserve; |
2161 | 2166 | ||
2162 | names_cachep = kmem_cache_create("names_cache", PATH_MAX, 0, | 2167 | names_cachep = kmem_cache_create("names_cache", PATH_MAX, 0, |
2163 | SLAB_HWCACHE_ALIGN|SLAB_PANIC, NULL, NULL); | 2168 | SLAB_HWCACHE_ALIGN|SLAB_PANIC, NULL); |
2164 | 2169 | ||
2165 | filp_cachep = kmem_cache_create("filp", sizeof(struct file), 0, | 2170 | filp_cachep = kmem_cache_create("filp", sizeof(struct file), 0, |
2166 | SLAB_HWCACHE_ALIGN|SLAB_PANIC, NULL, NULL); | 2171 | SLAB_HWCACHE_ALIGN|SLAB_PANIC, NULL); |
2167 | 2172 | ||
2168 | dcache_init(mempages); | 2173 | dcache_init(mempages); |
2169 | inode_init(mempages); | 2174 | inode_init(mempages); |