diff options
65 files changed, 114 insertions, 92 deletions
diff --git a/arch/powerpc/platforms/cell/spufs/inode.c b/arch/powerpc/platforms/cell/spufs/inode.c index 11634fa7ab3c..ad4840f86be1 100644 --- a/arch/powerpc/platforms/cell/spufs/inode.c +++ b/arch/powerpc/platforms/cell/spufs/inode.c | |||
@@ -767,7 +767,7 @@ static int __init spufs_init(void) | |||
767 | ret = -ENOMEM; | 767 | ret = -ENOMEM; |
768 | spufs_inode_cache = kmem_cache_create("spufs_inode_cache", | 768 | spufs_inode_cache = kmem_cache_create("spufs_inode_cache", |
769 | sizeof(struct spufs_inode_info), 0, | 769 | sizeof(struct spufs_inode_info), 0, |
770 | SLAB_HWCACHE_ALIGN, spufs_init_once); | 770 | SLAB_HWCACHE_ALIGN|SLAB_ACCOUNT, spufs_init_once); |
771 | 771 | ||
772 | if (!spufs_inode_cache) | 772 | if (!spufs_inode_cache) |
773 | goto out; | 773 | goto out; |
diff --git a/drivers/staging/lustre/lustre/llite/super25.c b/drivers/staging/lustre/lustre/llite/super25.c index 7a9fafc67693..86c371ef71ea 100644 --- a/drivers/staging/lustre/lustre/llite/super25.c +++ b/drivers/staging/lustre/lustre/llite/super25.c | |||
@@ -106,7 +106,8 @@ static int __init init_lustre_lite(void) | |||
106 | rc = -ENOMEM; | 106 | rc = -ENOMEM; |
107 | ll_inode_cachep = kmem_cache_create("lustre_inode_cache", | 107 | ll_inode_cachep = kmem_cache_create("lustre_inode_cache", |
108 | sizeof(struct ll_inode_info), | 108 | sizeof(struct ll_inode_info), |
109 | 0, SLAB_HWCACHE_ALIGN, NULL); | 109 | 0, SLAB_HWCACHE_ALIGN|SLAB_ACCOUNT, |
110 | NULL); | ||
110 | if (ll_inode_cachep == NULL) | 111 | if (ll_inode_cachep == NULL) |
111 | goto out_cache; | 112 | goto out_cache; |
112 | 113 | ||
diff --git a/fs/9p/v9fs.c b/fs/9p/v9fs.c index 6caca025019d..072e7599583a 100644 --- a/fs/9p/v9fs.c +++ b/fs/9p/v9fs.c | |||
@@ -575,7 +575,7 @@ static int v9fs_init_inode_cache(void) | |||
575 | v9fs_inode_cache = kmem_cache_create("v9fs_inode_cache", | 575 | v9fs_inode_cache = kmem_cache_create("v9fs_inode_cache", |
576 | sizeof(struct v9fs_inode), | 576 | sizeof(struct v9fs_inode), |
577 | 0, (SLAB_RECLAIM_ACCOUNT| | 577 | 0, (SLAB_RECLAIM_ACCOUNT| |
578 | SLAB_MEM_SPREAD), | 578 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
579 | v9fs_inode_init_once); | 579 | v9fs_inode_init_once); |
580 | if (!v9fs_inode_cache) | 580 | if (!v9fs_inode_cache) |
581 | return -ENOMEM; | 581 | return -ENOMEM; |
diff --git a/fs/adfs/super.c b/fs/adfs/super.c index 4d4a0df8344f..c9fdfb112933 100644 --- a/fs/adfs/super.c +++ b/fs/adfs/super.c | |||
@@ -271,7 +271,7 @@ static int __init init_inodecache(void) | |||
271 | adfs_inode_cachep = kmem_cache_create("adfs_inode_cache", | 271 | adfs_inode_cachep = kmem_cache_create("adfs_inode_cache", |
272 | sizeof(struct adfs_inode_info), | 272 | sizeof(struct adfs_inode_info), |
273 | 0, (SLAB_RECLAIM_ACCOUNT| | 273 | 0, (SLAB_RECLAIM_ACCOUNT| |
274 | SLAB_MEM_SPREAD), | 274 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
275 | init_once); | 275 | init_once); |
276 | if (adfs_inode_cachep == NULL) | 276 | if (adfs_inode_cachep == NULL) |
277 | return -ENOMEM; | 277 | return -ENOMEM; |
diff --git a/fs/affs/super.c b/fs/affs/super.c index 8836df5f1e11..2a6713b6b9f4 100644 --- a/fs/affs/super.c +++ b/fs/affs/super.c | |||
@@ -132,7 +132,7 @@ static int __init init_inodecache(void) | |||
132 | affs_inode_cachep = kmem_cache_create("affs_inode_cache", | 132 | affs_inode_cachep = kmem_cache_create("affs_inode_cache", |
133 | sizeof(struct affs_inode_info), | 133 | sizeof(struct affs_inode_info), |
134 | 0, (SLAB_RECLAIM_ACCOUNT| | 134 | 0, (SLAB_RECLAIM_ACCOUNT| |
135 | SLAB_MEM_SPREAD), | 135 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
136 | init_once); | 136 | init_once); |
137 | if (affs_inode_cachep == NULL) | 137 | if (affs_inode_cachep == NULL) |
138 | return -ENOMEM; | 138 | return -ENOMEM; |
diff --git a/fs/afs/super.c b/fs/afs/super.c index 1fb4a5129f7d..81afefe7d8a6 100644 --- a/fs/afs/super.c +++ b/fs/afs/super.c | |||
@@ -91,7 +91,7 @@ int __init afs_fs_init(void) | |||
91 | afs_inode_cachep = kmem_cache_create("afs_inode_cache", | 91 | afs_inode_cachep = kmem_cache_create("afs_inode_cache", |
92 | sizeof(struct afs_vnode), | 92 | sizeof(struct afs_vnode), |
93 | 0, | 93 | 0, |
94 | SLAB_HWCACHE_ALIGN, | 94 | SLAB_HWCACHE_ALIGN|SLAB_ACCOUNT, |
95 | afs_i_init_once); | 95 | afs_i_init_once); |
96 | if (!afs_inode_cachep) { | 96 | if (!afs_inode_cachep) { |
97 | printk(KERN_NOTICE "kAFS: Failed to allocate inode cache\n"); | 97 | printk(KERN_NOTICE "kAFS: Failed to allocate inode cache\n"); |
diff --git a/fs/befs/linuxvfs.c b/fs/befs/linuxvfs.c index 25250fa87086..cc0e08252913 100644 --- a/fs/befs/linuxvfs.c +++ b/fs/befs/linuxvfs.c | |||
@@ -434,7 +434,7 @@ befs_init_inodecache(void) | |||
434 | befs_inode_cachep = kmem_cache_create("befs_inode_cache", | 434 | befs_inode_cachep = kmem_cache_create("befs_inode_cache", |
435 | sizeof (struct befs_inode_info), | 435 | sizeof (struct befs_inode_info), |
436 | 0, (SLAB_RECLAIM_ACCOUNT| | 436 | 0, (SLAB_RECLAIM_ACCOUNT| |
437 | SLAB_MEM_SPREAD), | 437 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
438 | init_once); | 438 | init_once); |
439 | if (befs_inode_cachep == NULL) { | 439 | if (befs_inode_cachep == NULL) { |
440 | pr_err("%s: Couldn't initialize inode slabcache\n", __func__); | 440 | pr_err("%s: Couldn't initialize inode slabcache\n", __func__); |
diff --git a/fs/bfs/inode.c b/fs/bfs/inode.c index fdcb4d69f430..1e5c896f6b79 100644 --- a/fs/bfs/inode.c +++ b/fs/bfs/inode.c | |||
@@ -270,7 +270,7 @@ static int __init init_inodecache(void) | |||
270 | bfs_inode_cachep = kmem_cache_create("bfs_inode_cache", | 270 | bfs_inode_cachep = kmem_cache_create("bfs_inode_cache", |
271 | sizeof(struct bfs_inode_info), | 271 | sizeof(struct bfs_inode_info), |
272 | 0, (SLAB_RECLAIM_ACCOUNT| | 272 | 0, (SLAB_RECLAIM_ACCOUNT| |
273 | SLAB_MEM_SPREAD), | 273 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
274 | init_once); | 274 | init_once); |
275 | if (bfs_inode_cachep == NULL) | 275 | if (bfs_inode_cachep == NULL) |
276 | return -ENOMEM; | 276 | return -ENOMEM; |
diff --git a/fs/block_dev.c b/fs/block_dev.c index d878e4860fb7..d33071dd683e 100644 --- a/fs/block_dev.c +++ b/fs/block_dev.c | |||
@@ -595,7 +595,7 @@ void __init bdev_cache_init(void) | |||
595 | 595 | ||
596 | bdev_cachep = kmem_cache_create("bdev_cache", sizeof(struct bdev_inode), | 596 | bdev_cachep = kmem_cache_create("bdev_cache", sizeof(struct bdev_inode), |
597 | 0, (SLAB_HWCACHE_ALIGN|SLAB_RECLAIM_ACCOUNT| | 597 | 0, (SLAB_HWCACHE_ALIGN|SLAB_RECLAIM_ACCOUNT| |
598 | SLAB_MEM_SPREAD|SLAB_PANIC), | 598 | SLAB_MEM_SPREAD|SLAB_ACCOUNT|SLAB_PANIC), |
599 | init_once); | 599 | init_once); |
600 | err = register_filesystem(&bd_type); | 600 | err = register_filesystem(&bd_type); |
601 | if (err) | 601 | if (err) |
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 3b8856e182ae..394017831692 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c | |||
@@ -9161,7 +9161,8 @@ int btrfs_init_cachep(void) | |||
9161 | { | 9161 | { |
9162 | btrfs_inode_cachep = kmem_cache_create("btrfs_inode", | 9162 | btrfs_inode_cachep = kmem_cache_create("btrfs_inode", |
9163 | sizeof(struct btrfs_inode), 0, | 9163 | sizeof(struct btrfs_inode), 0, |
9164 | SLAB_RECLAIM_ACCOUNT | SLAB_MEM_SPREAD, init_once); | 9164 | SLAB_RECLAIM_ACCOUNT | SLAB_MEM_SPREAD | SLAB_ACCOUNT, |
9165 | init_once); | ||
9165 | if (!btrfs_inode_cachep) | 9166 | if (!btrfs_inode_cachep) |
9166 | goto fail; | 9167 | goto fail; |
9167 | 9168 | ||
diff --git a/fs/ceph/super.c b/fs/ceph/super.c index f446afada328..ca4d5e8457f1 100644 --- a/fs/ceph/super.c +++ b/fs/ceph/super.c | |||
@@ -639,8 +639,8 @@ static int __init init_caches(void) | |||
639 | ceph_inode_cachep = kmem_cache_create("ceph_inode_info", | 639 | ceph_inode_cachep = kmem_cache_create("ceph_inode_info", |
640 | sizeof(struct ceph_inode_info), | 640 | sizeof(struct ceph_inode_info), |
641 | __alignof__(struct ceph_inode_info), | 641 | __alignof__(struct ceph_inode_info), |
642 | (SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD), | 642 | SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD| |
643 | ceph_inode_init_once); | 643 | SLAB_ACCOUNT, ceph_inode_init_once); |
644 | if (ceph_inode_cachep == NULL) | 644 | if (ceph_inode_cachep == NULL) |
645 | return -ENOMEM; | 645 | return -ENOMEM; |
646 | 646 | ||
diff --git a/fs/cifs/cifsfs.c b/fs/cifs/cifsfs.c index b7fcb3151103..c4c1169814b2 100644 --- a/fs/cifs/cifsfs.c +++ b/fs/cifs/cifsfs.c | |||
@@ -1092,7 +1092,7 @@ cifs_init_inodecache(void) | |||
1092 | cifs_inode_cachep = kmem_cache_create("cifs_inode_cache", | 1092 | cifs_inode_cachep = kmem_cache_create("cifs_inode_cache", |
1093 | sizeof(struct cifsInodeInfo), | 1093 | sizeof(struct cifsInodeInfo), |
1094 | 0, (SLAB_RECLAIM_ACCOUNT| | 1094 | 0, (SLAB_RECLAIM_ACCOUNT| |
1095 | SLAB_MEM_SPREAD), | 1095 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
1096 | cifs_init_once); | 1096 | cifs_init_once); |
1097 | if (cifs_inode_cachep == NULL) | 1097 | if (cifs_inode_cachep == NULL) |
1098 | return -ENOMEM; | 1098 | return -ENOMEM; |
diff --git a/fs/coda/inode.c b/fs/coda/inode.c index cac1390b87a3..57e81cbba0fa 100644 --- a/fs/coda/inode.c +++ b/fs/coda/inode.c | |||
@@ -74,9 +74,9 @@ static void init_once(void *foo) | |||
74 | int __init coda_init_inodecache(void) | 74 | int __init coda_init_inodecache(void) |
75 | { | 75 | { |
76 | coda_inode_cachep = kmem_cache_create("coda_inode_cache", | 76 | coda_inode_cachep = kmem_cache_create("coda_inode_cache", |
77 | sizeof(struct coda_inode_info), | 77 | sizeof(struct coda_inode_info), 0, |
78 | 0, SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD, | 78 | SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD| |
79 | init_once); | 79 | SLAB_ACCOUNT, init_once); |
80 | if (coda_inode_cachep == NULL) | 80 | if (coda_inode_cachep == NULL) |
81 | return -ENOMEM; | 81 | return -ENOMEM; |
82 | return 0; | 82 | return 0; |
diff --git a/fs/dcache.c b/fs/dcache.c index 8d38cd07b207..b4539e84e577 100644 --- a/fs/dcache.c +++ b/fs/dcache.c | |||
@@ -1571,7 +1571,8 @@ struct dentry *__d_alloc(struct super_block *sb, const struct qstr *name) | |||
1571 | dentry->d_iname[DNAME_INLINE_LEN-1] = 0; | 1571 | dentry->d_iname[DNAME_INLINE_LEN-1] = 0; |
1572 | if (name->len > DNAME_INLINE_LEN-1) { | 1572 | if (name->len > DNAME_INLINE_LEN-1) { |
1573 | size_t size = offsetof(struct external_name, name[1]); | 1573 | size_t size = offsetof(struct external_name, name[1]); |
1574 | struct external_name *p = kmalloc(size + name->len, GFP_KERNEL); | 1574 | struct external_name *p = kmalloc(size + name->len, |
1575 | GFP_KERNEL_ACCOUNT); | ||
1575 | if (!p) { | 1576 | if (!p) { |
1576 | kmem_cache_free(dentry_cache, dentry); | 1577 | kmem_cache_free(dentry_cache, dentry); |
1577 | return NULL; | 1578 | return NULL; |
@@ -3415,7 +3416,7 @@ static void __init dcache_init(void) | |||
3415 | * of the dcache. | 3416 | * of the dcache. |
3416 | */ | 3417 | */ |
3417 | dentry_cache = KMEM_CACHE(dentry, | 3418 | dentry_cache = KMEM_CACHE(dentry, |
3418 | SLAB_RECLAIM_ACCOUNT|SLAB_PANIC|SLAB_MEM_SPREAD); | 3419 | SLAB_RECLAIM_ACCOUNT|SLAB_PANIC|SLAB_MEM_SPREAD|SLAB_ACCOUNT); |
3419 | 3420 | ||
3420 | /* Hash may have been set up in dcache_init_early */ | 3421 | /* Hash may have been set up in dcache_init_early */ |
3421 | if (!hashdist) | 3422 | if (!hashdist) |
diff --git a/fs/ecryptfs/main.c b/fs/ecryptfs/main.c index 4f4d0474bee9..e25b6b06bacf 100644 --- a/fs/ecryptfs/main.c +++ b/fs/ecryptfs/main.c | |||
@@ -663,6 +663,7 @@ static struct ecryptfs_cache_info { | |||
663 | struct kmem_cache **cache; | 663 | struct kmem_cache **cache; |
664 | const char *name; | 664 | const char *name; |
665 | size_t size; | 665 | size_t size; |
666 | unsigned long flags; | ||
666 | void (*ctor)(void *obj); | 667 | void (*ctor)(void *obj); |
667 | } ecryptfs_cache_infos[] = { | 668 | } ecryptfs_cache_infos[] = { |
668 | { | 669 | { |
@@ -684,6 +685,7 @@ static struct ecryptfs_cache_info { | |||
684 | .cache = &ecryptfs_inode_info_cache, | 685 | .cache = &ecryptfs_inode_info_cache, |
685 | .name = "ecryptfs_inode_cache", | 686 | .name = "ecryptfs_inode_cache", |
686 | .size = sizeof(struct ecryptfs_inode_info), | 687 | .size = sizeof(struct ecryptfs_inode_info), |
688 | .flags = SLAB_ACCOUNT, | ||
687 | .ctor = inode_info_init_once, | 689 | .ctor = inode_info_init_once, |
688 | }, | 690 | }, |
689 | { | 691 | { |
@@ -755,8 +757,8 @@ static int ecryptfs_init_kmem_caches(void) | |||
755 | struct ecryptfs_cache_info *info; | 757 | struct ecryptfs_cache_info *info; |
756 | 758 | ||
757 | info = &ecryptfs_cache_infos[i]; | 759 | info = &ecryptfs_cache_infos[i]; |
758 | *(info->cache) = kmem_cache_create(info->name, info->size, | 760 | *(info->cache) = kmem_cache_create(info->name, info->size, 0, |
759 | 0, SLAB_HWCACHE_ALIGN, info->ctor); | 761 | SLAB_HWCACHE_ALIGN | info->flags, info->ctor); |
760 | if (!*(info->cache)) { | 762 | if (!*(info->cache)) { |
761 | ecryptfs_free_kmem_caches(); | 763 | ecryptfs_free_kmem_caches(); |
762 | ecryptfs_printk(KERN_WARNING, "%s: " | 764 | ecryptfs_printk(KERN_WARNING, "%s: " |
diff --git a/fs/efs/super.c b/fs/efs/super.c index c8411a30f7da..cb68dac4f9d3 100644 --- a/fs/efs/super.c +++ b/fs/efs/super.c | |||
@@ -94,9 +94,9 @@ static void init_once(void *foo) | |||
94 | static int __init init_inodecache(void) | 94 | static int __init init_inodecache(void) |
95 | { | 95 | { |
96 | efs_inode_cachep = kmem_cache_create("efs_inode_cache", | 96 | efs_inode_cachep = kmem_cache_create("efs_inode_cache", |
97 | sizeof(struct efs_inode_info), | 97 | sizeof(struct efs_inode_info), 0, |
98 | 0, SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD, | 98 | SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD| |
99 | init_once); | 99 | SLAB_ACCOUNT, init_once); |
100 | if (efs_inode_cachep == NULL) | 100 | if (efs_inode_cachep == NULL) |
101 | return -ENOMEM; | 101 | return -ENOMEM; |
102 | return 0; | 102 | return 0; |
diff --git a/fs/exofs/super.c b/fs/exofs/super.c index b795c567b5e1..6658a50530a0 100644 --- a/fs/exofs/super.c +++ b/fs/exofs/super.c | |||
@@ -194,8 +194,8 @@ static int init_inodecache(void) | |||
194 | { | 194 | { |
195 | exofs_inode_cachep = kmem_cache_create("exofs_inode_cache", | 195 | exofs_inode_cachep = kmem_cache_create("exofs_inode_cache", |
196 | sizeof(struct exofs_i_info), 0, | 196 | sizeof(struct exofs_i_info), 0, |
197 | SLAB_RECLAIM_ACCOUNT | SLAB_MEM_SPREAD, | 197 | SLAB_RECLAIM_ACCOUNT | SLAB_MEM_SPREAD | |
198 | exofs_init_once); | 198 | SLAB_ACCOUNT, exofs_init_once); |
199 | if (exofs_inode_cachep == NULL) | 199 | if (exofs_inode_cachep == NULL) |
200 | return -ENOMEM; | 200 | return -ENOMEM; |
201 | return 0; | 201 | return 0; |
diff --git a/fs/ext2/super.c b/fs/ext2/super.c index 748d35afc902..2a188413a2b0 100644 --- a/fs/ext2/super.c +++ b/fs/ext2/super.c | |||
@@ -203,7 +203,7 @@ static int __init init_inodecache(void) | |||
203 | ext2_inode_cachep = kmem_cache_create("ext2_inode_cache", | 203 | ext2_inode_cachep = kmem_cache_create("ext2_inode_cache", |
204 | sizeof(struct ext2_inode_info), | 204 | sizeof(struct ext2_inode_info), |
205 | 0, (SLAB_RECLAIM_ACCOUNT| | 205 | 0, (SLAB_RECLAIM_ACCOUNT| |
206 | SLAB_MEM_SPREAD), | 206 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
207 | init_once); | 207 | init_once); |
208 | if (ext2_inode_cachep == NULL) | 208 | if (ext2_inode_cachep == NULL) |
209 | return -ENOMEM; | 209 | return -ENOMEM; |
diff --git a/fs/ext4/super.c b/fs/ext4/super.c index c9ab67da6e5a..f1b56ff01208 100644 --- a/fs/ext4/super.c +++ b/fs/ext4/super.c | |||
@@ -966,7 +966,7 @@ static int __init init_inodecache(void) | |||
966 | ext4_inode_cachep = kmem_cache_create("ext4_inode_cache", | 966 | ext4_inode_cachep = kmem_cache_create("ext4_inode_cache", |
967 | sizeof(struct ext4_inode_info), | 967 | sizeof(struct ext4_inode_info), |
968 | 0, (SLAB_RECLAIM_ACCOUNT| | 968 | 0, (SLAB_RECLAIM_ACCOUNT| |
969 | SLAB_MEM_SPREAD), | 969 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
970 | init_once); | 970 | init_once); |
971 | if (ext4_inode_cachep == NULL) | 971 | if (ext4_inode_cachep == NULL) |
972 | return -ENOMEM; | 972 | return -ENOMEM; |
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c index 3bf990b80026..6134832baaaf 100644 --- a/fs/f2fs/super.c +++ b/fs/f2fs/super.c | |||
@@ -1541,8 +1541,9 @@ MODULE_ALIAS_FS("f2fs"); | |||
1541 | 1541 | ||
1542 | static int __init init_inodecache(void) | 1542 | static int __init init_inodecache(void) |
1543 | { | 1543 | { |
1544 | f2fs_inode_cachep = f2fs_kmem_cache_create("f2fs_inode_cache", | 1544 | f2fs_inode_cachep = kmem_cache_create("f2fs_inode_cache", |
1545 | sizeof(struct f2fs_inode_info)); | 1545 | sizeof(struct f2fs_inode_info), 0, |
1546 | SLAB_RECLAIM_ACCOUNT|SLAB_ACCOUNT, NULL); | ||
1546 | if (!f2fs_inode_cachep) | 1547 | if (!f2fs_inode_cachep) |
1547 | return -ENOMEM; | 1548 | return -ENOMEM; |
1548 | return 0; | 1549 | return 0; |
diff --git a/fs/fat/inode.c b/fs/fat/inode.c index 509411dd3698..6aece96df19f 100644 --- a/fs/fat/inode.c +++ b/fs/fat/inode.c | |||
@@ -677,7 +677,7 @@ static int __init fat_init_inodecache(void) | |||
677 | fat_inode_cachep = kmem_cache_create("fat_inode_cache", | 677 | fat_inode_cachep = kmem_cache_create("fat_inode_cache", |
678 | sizeof(struct msdos_inode_info), | 678 | sizeof(struct msdos_inode_info), |
679 | 0, (SLAB_RECLAIM_ACCOUNT| | 679 | 0, (SLAB_RECLAIM_ACCOUNT| |
680 | SLAB_MEM_SPREAD), | 680 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
681 | init_once); | 681 | init_once); |
682 | if (fat_inode_cachep == NULL) | 682 | if (fat_inode_cachep == NULL) |
683 | return -ENOMEM; | 683 | return -ENOMEM; |
@@ -37,11 +37,12 @@ static void *alloc_fdmem(size_t size) | |||
37 | * vmalloc() if the allocation size will be considered "large" by the VM. | 37 | * vmalloc() if the allocation size will be considered "large" by the VM. |
38 | */ | 38 | */ |
39 | if (size <= (PAGE_SIZE << PAGE_ALLOC_COSTLY_ORDER)) { | 39 | if (size <= (PAGE_SIZE << PAGE_ALLOC_COSTLY_ORDER)) { |
40 | void *data = kmalloc(size, GFP_KERNEL|__GFP_NOWARN|__GFP_NORETRY); | 40 | void *data = kmalloc(size, GFP_KERNEL_ACCOUNT | |
41 | __GFP_NOWARN | __GFP_NORETRY); | ||
41 | if (data != NULL) | 42 | if (data != NULL) |
42 | return data; | 43 | return data; |
43 | } | 44 | } |
44 | return vmalloc(size); | 45 | return __vmalloc(size, GFP_KERNEL_ACCOUNT | __GFP_HIGHMEM, PAGE_KERNEL); |
45 | } | 46 | } |
46 | 47 | ||
47 | static void __free_fdtable(struct fdtable *fdt) | 48 | static void __free_fdtable(struct fdtable *fdt) |
@@ -126,7 +127,7 @@ static struct fdtable * alloc_fdtable(unsigned int nr) | |||
126 | if (unlikely(nr > sysctl_nr_open)) | 127 | if (unlikely(nr > sysctl_nr_open)) |
127 | nr = ((sysctl_nr_open - 1) | (BITS_PER_LONG - 1)) + 1; | 128 | nr = ((sysctl_nr_open - 1) | (BITS_PER_LONG - 1)) + 1; |
128 | 129 | ||
129 | fdt = kmalloc(sizeof(struct fdtable), GFP_KERNEL); | 130 | fdt = kmalloc(sizeof(struct fdtable), GFP_KERNEL_ACCOUNT); |
130 | if (!fdt) | 131 | if (!fdt) |
131 | goto out; | 132 | goto out; |
132 | fdt->max_fds = nr; | 133 | fdt->max_fds = nr; |
diff --git a/fs/fuse/inode.c b/fs/fuse/inode.c index 2913db2a5b99..4d69d5c0bedc 100644 --- a/fs/fuse/inode.c +++ b/fs/fuse/inode.c | |||
@@ -1255,8 +1255,8 @@ static int __init fuse_fs_init(void) | |||
1255 | int err; | 1255 | int err; |
1256 | 1256 | ||
1257 | fuse_inode_cachep = kmem_cache_create("fuse_inode", | 1257 | fuse_inode_cachep = kmem_cache_create("fuse_inode", |
1258 | sizeof(struct fuse_inode), | 1258 | sizeof(struct fuse_inode), 0, |
1259 | 0, SLAB_HWCACHE_ALIGN, | 1259 | SLAB_HWCACHE_ALIGN|SLAB_ACCOUNT, |
1260 | fuse_inode_init_once); | 1260 | fuse_inode_init_once); |
1261 | err = -ENOMEM; | 1261 | err = -ENOMEM; |
1262 | if (!fuse_inode_cachep) | 1262 | if (!fuse_inode_cachep) |
diff --git a/fs/gfs2/main.c b/fs/gfs2/main.c index 1d709d496364..f99f8e94de3f 100644 --- a/fs/gfs2/main.c +++ b/fs/gfs2/main.c | |||
@@ -114,7 +114,8 @@ static int __init init_gfs2_fs(void) | |||
114 | gfs2_inode_cachep = kmem_cache_create("gfs2_inode", | 114 | gfs2_inode_cachep = kmem_cache_create("gfs2_inode", |
115 | sizeof(struct gfs2_inode), | 115 | sizeof(struct gfs2_inode), |
116 | 0, SLAB_RECLAIM_ACCOUNT| | 116 | 0, SLAB_RECLAIM_ACCOUNT| |
117 | SLAB_MEM_SPREAD, | 117 | SLAB_MEM_SPREAD| |
118 | SLAB_ACCOUNT, | ||
118 | gfs2_init_inode_once); | 119 | gfs2_init_inode_once); |
119 | if (!gfs2_inode_cachep) | 120 | if (!gfs2_inode_cachep) |
120 | goto fail; | 121 | goto fail; |
diff --git a/fs/hfs/super.c b/fs/hfs/super.c index 4574fdd3d421..1ca95c232bb5 100644 --- a/fs/hfs/super.c +++ b/fs/hfs/super.c | |||
@@ -483,8 +483,8 @@ static int __init init_hfs_fs(void) | |||
483 | int err; | 483 | int err; |
484 | 484 | ||
485 | hfs_inode_cachep = kmem_cache_create("hfs_inode_cache", | 485 | hfs_inode_cachep = kmem_cache_create("hfs_inode_cache", |
486 | sizeof(struct hfs_inode_info), 0, SLAB_HWCACHE_ALIGN, | 486 | sizeof(struct hfs_inode_info), 0, |
487 | hfs_init_once); | 487 | SLAB_HWCACHE_ALIGN|SLAB_ACCOUNT, hfs_init_once); |
488 | if (!hfs_inode_cachep) | 488 | if (!hfs_inode_cachep) |
489 | return -ENOMEM; | 489 | return -ENOMEM; |
490 | err = register_filesystem(&hfs_fs_type); | 490 | err = register_filesystem(&hfs_fs_type); |
diff --git a/fs/hfsplus/super.c b/fs/hfsplus/super.c index 7302d96ae8bf..5d54490a136d 100644 --- a/fs/hfsplus/super.c +++ b/fs/hfsplus/super.c | |||
@@ -663,7 +663,7 @@ static int __init init_hfsplus_fs(void) | |||
663 | int err; | 663 | int err; |
664 | 664 | ||
665 | hfsplus_inode_cachep = kmem_cache_create("hfsplus_icache", | 665 | hfsplus_inode_cachep = kmem_cache_create("hfsplus_icache", |
666 | HFSPLUS_INODE_SIZE, 0, SLAB_HWCACHE_ALIGN, | 666 | HFSPLUS_INODE_SIZE, 0, SLAB_HWCACHE_ALIGN|SLAB_ACCOUNT, |
667 | hfsplus_init_once); | 667 | hfsplus_init_once); |
668 | if (!hfsplus_inode_cachep) | 668 | if (!hfsplus_inode_cachep) |
669 | return -ENOMEM; | 669 | return -ENOMEM; |
diff --git a/fs/hostfs/hostfs_kern.c b/fs/hostfs/hostfs_kern.c index f49be23e78aa..cfaa18c7a337 100644 --- a/fs/hostfs/hostfs_kern.c +++ b/fs/hostfs/hostfs_kern.c | |||
@@ -223,7 +223,7 @@ static struct inode *hostfs_alloc_inode(struct super_block *sb) | |||
223 | { | 223 | { |
224 | struct hostfs_inode_info *hi; | 224 | struct hostfs_inode_info *hi; |
225 | 225 | ||
226 | hi = kmalloc(sizeof(*hi), GFP_KERNEL); | 226 | hi = kmalloc(sizeof(*hi), GFP_KERNEL_ACCOUNT); |
227 | if (hi == NULL) | 227 | if (hi == NULL) |
228 | return NULL; | 228 | return NULL; |
229 | hi->fd = -1; | 229 | hi->fd = -1; |
diff --git a/fs/hpfs/super.c b/fs/hpfs/super.c index a561591896bd..458cf463047b 100644 --- a/fs/hpfs/super.c +++ b/fs/hpfs/super.c | |||
@@ -261,7 +261,7 @@ static int init_inodecache(void) | |||
261 | hpfs_inode_cachep = kmem_cache_create("hpfs_inode_cache", | 261 | hpfs_inode_cachep = kmem_cache_create("hpfs_inode_cache", |
262 | sizeof(struct hpfs_inode_info), | 262 | sizeof(struct hpfs_inode_info), |
263 | 0, (SLAB_RECLAIM_ACCOUNT| | 263 | 0, (SLAB_RECLAIM_ACCOUNT| |
264 | SLAB_MEM_SPREAD), | 264 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
265 | init_once); | 265 | init_once); |
266 | if (hpfs_inode_cachep == NULL) | 266 | if (hpfs_inode_cachep == NULL) |
267 | return -ENOMEM; | 267 | return -ENOMEM; |
diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index d8f51ee8126b..f6820ecf0a11 100644 --- a/fs/hugetlbfs/inode.c +++ b/fs/hugetlbfs/inode.c | |||
@@ -1322,7 +1322,7 @@ static int __init init_hugetlbfs_fs(void) | |||
1322 | error = -ENOMEM; | 1322 | error = -ENOMEM; |
1323 | hugetlbfs_inode_cachep = kmem_cache_create("hugetlbfs_inode_cache", | 1323 | hugetlbfs_inode_cachep = kmem_cache_create("hugetlbfs_inode_cache", |
1324 | sizeof(struct hugetlbfs_inode_info), | 1324 | sizeof(struct hugetlbfs_inode_info), |
1325 | 0, 0, init_once); | 1325 | 0, SLAB_ACCOUNT, init_once); |
1326 | if (hugetlbfs_inode_cachep == NULL) | 1326 | if (hugetlbfs_inode_cachep == NULL) |
1327 | goto out2; | 1327 | goto out2; |
1328 | 1328 | ||
diff --git a/fs/inode.c b/fs/inode.c index 4230f66b7410..e491e54d2430 100644 --- a/fs/inode.c +++ b/fs/inode.c | |||
@@ -1883,7 +1883,7 @@ void __init inode_init(void) | |||
1883 | sizeof(struct inode), | 1883 | sizeof(struct inode), |
1884 | 0, | 1884 | 0, |
1885 | (SLAB_RECLAIM_ACCOUNT|SLAB_PANIC| | 1885 | (SLAB_RECLAIM_ACCOUNT|SLAB_PANIC| |
1886 | SLAB_MEM_SPREAD), | 1886 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
1887 | init_once); | 1887 | init_once); |
1888 | 1888 | ||
1889 | /* Hash may have been set up in inode_init_early */ | 1889 | /* Hash may have been set up in inode_init_early */ |
diff --git a/fs/isofs/inode.c b/fs/isofs/inode.c index 61abdc4920da..bcd2d41b318a 100644 --- a/fs/isofs/inode.c +++ b/fs/isofs/inode.c | |||
@@ -94,7 +94,7 @@ static int __init init_inodecache(void) | |||
94 | isofs_inode_cachep = kmem_cache_create("isofs_inode_cache", | 94 | isofs_inode_cachep = kmem_cache_create("isofs_inode_cache", |
95 | sizeof(struct iso_inode_info), | 95 | sizeof(struct iso_inode_info), |
96 | 0, (SLAB_RECLAIM_ACCOUNT| | 96 | 0, (SLAB_RECLAIM_ACCOUNT| |
97 | SLAB_MEM_SPREAD), | 97 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
98 | init_once); | 98 | init_once); |
99 | if (isofs_inode_cachep == NULL) | 99 | if (isofs_inode_cachep == NULL) |
100 | return -ENOMEM; | 100 | return -ENOMEM; |
diff --git a/fs/jffs2/super.c b/fs/jffs2/super.c index d86c5e3176a1..bb080c272149 100644 --- a/fs/jffs2/super.c +++ b/fs/jffs2/super.c | |||
@@ -387,7 +387,7 @@ static int __init init_jffs2_fs(void) | |||
387 | jffs2_inode_cachep = kmem_cache_create("jffs2_i", | 387 | jffs2_inode_cachep = kmem_cache_create("jffs2_i", |
388 | sizeof(struct jffs2_inode_info), | 388 | sizeof(struct jffs2_inode_info), |
389 | 0, (SLAB_RECLAIM_ACCOUNT| | 389 | 0, (SLAB_RECLAIM_ACCOUNT| |
390 | SLAB_MEM_SPREAD), | 390 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
391 | jffs2_i_init_once); | 391 | jffs2_i_init_once); |
392 | if (!jffs2_inode_cachep) { | 392 | if (!jffs2_inode_cachep) { |
393 | pr_err("error: Failed to initialise inode cache\n"); | 393 | pr_err("error: Failed to initialise inode cache\n"); |
diff --git a/fs/jfs/super.c b/fs/jfs/super.c index 8f9176caf098..900925b5eb8c 100644 --- a/fs/jfs/super.c +++ b/fs/jfs/super.c | |||
@@ -898,7 +898,7 @@ static int __init init_jfs_fs(void) | |||
898 | 898 | ||
899 | jfs_inode_cachep = | 899 | jfs_inode_cachep = |
900 | kmem_cache_create("jfs_ip", sizeof(struct jfs_inode_info), 0, | 900 | kmem_cache_create("jfs_ip", sizeof(struct jfs_inode_info), 0, |
901 | SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD, | 901 | SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD|SLAB_ACCOUNT, |
902 | init_once); | 902 | init_once); |
903 | if (jfs_inode_cachep == NULL) | 903 | if (jfs_inode_cachep == NULL) |
904 | return -ENOMEM; | 904 | return -ENOMEM; |
diff --git a/fs/logfs/inode.c b/fs/logfs/inode.c index 0fce46d62b9c..db9cfc598883 100644 --- a/fs/logfs/inode.c +++ b/fs/logfs/inode.c | |||
@@ -409,7 +409,8 @@ const struct super_operations logfs_super_operations = { | |||
409 | int logfs_init_inode_cache(void) | 409 | int logfs_init_inode_cache(void) |
410 | { | 410 | { |
411 | logfs_inode_cache = kmem_cache_create("logfs_inode_cache", | 411 | logfs_inode_cache = kmem_cache_create("logfs_inode_cache", |
412 | sizeof(struct logfs_inode), 0, SLAB_RECLAIM_ACCOUNT, | 412 | sizeof(struct logfs_inode), 0, |
413 | SLAB_RECLAIM_ACCOUNT|SLAB_ACCOUNT, | ||
413 | logfs_init_once); | 414 | logfs_init_once); |
414 | if (!logfs_inode_cache) | 415 | if (!logfs_inode_cache) |
415 | return -ENOMEM; | 416 | return -ENOMEM; |
diff --git a/fs/minix/inode.c b/fs/minix/inode.c index cb1789ca1ee6..f975d667c539 100644 --- a/fs/minix/inode.c +++ b/fs/minix/inode.c | |||
@@ -91,7 +91,7 @@ static int __init init_inodecache(void) | |||
91 | minix_inode_cachep = kmem_cache_create("minix_inode_cache", | 91 | minix_inode_cachep = kmem_cache_create("minix_inode_cache", |
92 | sizeof(struct minix_inode_info), | 92 | sizeof(struct minix_inode_info), |
93 | 0, (SLAB_RECLAIM_ACCOUNT| | 93 | 0, (SLAB_RECLAIM_ACCOUNT| |
94 | SLAB_MEM_SPREAD), | 94 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
95 | init_once); | 95 | init_once); |
96 | if (minix_inode_cachep == NULL) | 96 | if (minix_inode_cachep == NULL) |
97 | return -ENOMEM; | 97 | return -ENOMEM; |
diff --git a/fs/ncpfs/inode.c b/fs/ncpfs/inode.c index ce1eb3f9dfe8..1af15fcbe57b 100644 --- a/fs/ncpfs/inode.c +++ b/fs/ncpfs/inode.c | |||
@@ -82,7 +82,7 @@ static int init_inodecache(void) | |||
82 | ncp_inode_cachep = kmem_cache_create("ncp_inode_cache", | 82 | ncp_inode_cachep = kmem_cache_create("ncp_inode_cache", |
83 | sizeof(struct ncp_inode_info), | 83 | sizeof(struct ncp_inode_info), |
84 | 0, (SLAB_RECLAIM_ACCOUNT| | 84 | 0, (SLAB_RECLAIM_ACCOUNT| |
85 | SLAB_MEM_SPREAD), | 85 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
86 | init_once); | 86 | init_once); |
87 | if (ncp_inode_cachep == NULL) | 87 | if (ncp_inode_cachep == NULL) |
88 | return -ENOMEM; | 88 | return -ENOMEM; |
diff --git a/fs/nfs/inode.c b/fs/nfs/inode.c index bdb4dc7b4ecd..48fd8a87affe 100644 --- a/fs/nfs/inode.c +++ b/fs/nfs/inode.c | |||
@@ -1933,7 +1933,7 @@ static int __init nfs_init_inodecache(void) | |||
1933 | nfs_inode_cachep = kmem_cache_create("nfs_inode_cache", | 1933 | nfs_inode_cachep = kmem_cache_create("nfs_inode_cache", |
1934 | sizeof(struct nfs_inode), | 1934 | sizeof(struct nfs_inode), |
1935 | 0, (SLAB_RECLAIM_ACCOUNT| | 1935 | 0, (SLAB_RECLAIM_ACCOUNT| |
1936 | SLAB_MEM_SPREAD), | 1936 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
1937 | init_once); | 1937 | init_once); |
1938 | if (nfs_inode_cachep == NULL) | 1938 | if (nfs_inode_cachep == NULL) |
1939 | return -ENOMEM; | 1939 | return -ENOMEM; |
diff --git a/fs/nilfs2/super.c b/fs/nilfs2/super.c index c7343844e6b6..7f5d3d9f1c37 100644 --- a/fs/nilfs2/super.c +++ b/fs/nilfs2/super.c | |||
@@ -1416,7 +1416,8 @@ static int __init nilfs_init_cachep(void) | |||
1416 | { | 1416 | { |
1417 | nilfs_inode_cachep = kmem_cache_create("nilfs2_inode_cache", | 1417 | nilfs_inode_cachep = kmem_cache_create("nilfs2_inode_cache", |
1418 | sizeof(struct nilfs_inode_info), 0, | 1418 | sizeof(struct nilfs_inode_info), 0, |
1419 | SLAB_RECLAIM_ACCOUNT, nilfs_inode_init_once); | 1419 | SLAB_RECLAIM_ACCOUNT|SLAB_ACCOUNT, |
1420 | nilfs_inode_init_once); | ||
1420 | if (!nilfs_inode_cachep) | 1421 | if (!nilfs_inode_cachep) |
1421 | goto fail; | 1422 | goto fail; |
1422 | 1423 | ||
diff --git a/fs/ntfs/super.c b/fs/ntfs/super.c index d1a853585b53..2f77f8dfb861 100644 --- a/fs/ntfs/super.c +++ b/fs/ntfs/super.c | |||
@@ -3139,8 +3139,8 @@ static int __init init_ntfs_fs(void) | |||
3139 | 3139 | ||
3140 | ntfs_big_inode_cache = kmem_cache_create(ntfs_big_inode_cache_name, | 3140 | ntfs_big_inode_cache = kmem_cache_create(ntfs_big_inode_cache_name, |
3141 | sizeof(big_ntfs_inode), 0, | 3141 | sizeof(big_ntfs_inode), 0, |
3142 | SLAB_HWCACHE_ALIGN|SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD, | 3142 | SLAB_HWCACHE_ALIGN|SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD| |
3143 | ntfs_big_inode_init_once); | 3143 | SLAB_ACCOUNT, ntfs_big_inode_init_once); |
3144 | if (!ntfs_big_inode_cache) { | 3144 | if (!ntfs_big_inode_cache) { |
3145 | pr_crit("Failed to create %s!\n", ntfs_big_inode_cache_name); | 3145 | pr_crit("Failed to create %s!\n", ntfs_big_inode_cache_name); |
3146 | goto big_inode_err_out; | 3146 | goto big_inode_err_out; |
diff --git a/fs/ocfs2/dlmfs/dlmfs.c b/fs/ocfs2/dlmfs/dlmfs.c index b5cf27dcb18a..03768bb3aab1 100644 --- a/fs/ocfs2/dlmfs/dlmfs.c +++ b/fs/ocfs2/dlmfs/dlmfs.c | |||
@@ -638,7 +638,7 @@ static int __init init_dlmfs_fs(void) | |||
638 | dlmfs_inode_cache = kmem_cache_create("dlmfs_inode_cache", | 638 | dlmfs_inode_cache = kmem_cache_create("dlmfs_inode_cache", |
639 | sizeof(struct dlmfs_inode_private), | 639 | sizeof(struct dlmfs_inode_private), |
640 | 0, (SLAB_HWCACHE_ALIGN|SLAB_RECLAIM_ACCOUNT| | 640 | 0, (SLAB_HWCACHE_ALIGN|SLAB_RECLAIM_ACCOUNT| |
641 | SLAB_MEM_SPREAD), | 641 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
642 | dlmfs_init_once); | 642 | dlmfs_init_once); |
643 | if (!dlmfs_inode_cache) { | 643 | if (!dlmfs_inode_cache) { |
644 | status = -ENOMEM; | 644 | status = -ENOMEM; |
diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c index c62d761d6bf0..faa1365097bc 100644 --- a/fs/ocfs2/super.c +++ b/fs/ocfs2/super.c | |||
@@ -1766,7 +1766,7 @@ static int ocfs2_initialize_mem_caches(void) | |||
1766 | sizeof(struct ocfs2_inode_info), | 1766 | sizeof(struct ocfs2_inode_info), |
1767 | 0, | 1767 | 0, |
1768 | (SLAB_HWCACHE_ALIGN|SLAB_RECLAIM_ACCOUNT| | 1768 | (SLAB_HWCACHE_ALIGN|SLAB_RECLAIM_ACCOUNT| |
1769 | SLAB_MEM_SPREAD), | 1769 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
1770 | ocfs2_inode_init_once); | 1770 | ocfs2_inode_init_once); |
1771 | ocfs2_dquot_cachep = kmem_cache_create("ocfs2_dquot_cache", | 1771 | ocfs2_dquot_cachep = kmem_cache_create("ocfs2_dquot_cache", |
1772 | sizeof(struct ocfs2_dquot), | 1772 | sizeof(struct ocfs2_dquot), |
diff --git a/fs/openpromfs/inode.c b/fs/openpromfs/inode.c index 15e4500cda3e..b61b883c8ff8 100644 --- a/fs/openpromfs/inode.c +++ b/fs/openpromfs/inode.c | |||
@@ -443,7 +443,7 @@ static int __init init_openprom_fs(void) | |||
443 | sizeof(struct op_inode_info), | 443 | sizeof(struct op_inode_info), |
444 | 0, | 444 | 0, |
445 | (SLAB_RECLAIM_ACCOUNT | | 445 | (SLAB_RECLAIM_ACCOUNT | |
446 | SLAB_MEM_SPREAD), | 446 | SLAB_MEM_SPREAD | SLAB_ACCOUNT), |
447 | op_inode_init_once); | 447 | op_inode_init_once); |
448 | if (!op_inode_cachep) | 448 | if (!op_inode_cachep) |
449 | return -ENOMEM; | 449 | return -ENOMEM; |
diff --git a/fs/proc/inode.c b/fs/proc/inode.c index d0e9b9b6223e..42305ddcbaa0 100644 --- a/fs/proc/inode.c +++ b/fs/proc/inode.c | |||
@@ -95,7 +95,8 @@ void __init proc_init_inodecache(void) | |||
95 | proc_inode_cachep = kmem_cache_create("proc_inode_cache", | 95 | proc_inode_cachep = kmem_cache_create("proc_inode_cache", |
96 | sizeof(struct proc_inode), | 96 | sizeof(struct proc_inode), |
97 | 0, (SLAB_RECLAIM_ACCOUNT| | 97 | 0, (SLAB_RECLAIM_ACCOUNT| |
98 | SLAB_MEM_SPREAD|SLAB_PANIC), | 98 | SLAB_MEM_SPREAD|SLAB_ACCOUNT| |
99 | SLAB_PANIC), | ||
99 | init_once); | 100 | init_once); |
100 | } | 101 | } |
101 | 102 | ||
diff --git a/fs/qnx4/inode.c b/fs/qnx4/inode.c index f37b3deb01b4..3a67cfb142d8 100644 --- a/fs/qnx4/inode.c +++ b/fs/qnx4/inode.c | |||
@@ -365,7 +365,7 @@ static int init_inodecache(void) | |||
365 | qnx4_inode_cachep = kmem_cache_create("qnx4_inode_cache", | 365 | qnx4_inode_cachep = kmem_cache_create("qnx4_inode_cache", |
366 | sizeof(struct qnx4_inode_info), | 366 | sizeof(struct qnx4_inode_info), |
367 | 0, (SLAB_RECLAIM_ACCOUNT| | 367 | 0, (SLAB_RECLAIM_ACCOUNT| |
368 | SLAB_MEM_SPREAD), | 368 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
369 | init_once); | 369 | init_once); |
370 | if (qnx4_inode_cachep == NULL) | 370 | if (qnx4_inode_cachep == NULL) |
371 | return -ENOMEM; | 371 | return -ENOMEM; |
diff --git a/fs/qnx6/inode.c b/fs/qnx6/inode.c index 9728b5499e1d..47bb1de07155 100644 --- a/fs/qnx6/inode.c +++ b/fs/qnx6/inode.c | |||
@@ -625,7 +625,7 @@ static int init_inodecache(void) | |||
625 | qnx6_inode_cachep = kmem_cache_create("qnx6_inode_cache", | 625 | qnx6_inode_cachep = kmem_cache_create("qnx6_inode_cache", |
626 | sizeof(struct qnx6_inode_info), | 626 | sizeof(struct qnx6_inode_info), |
627 | 0, (SLAB_RECLAIM_ACCOUNT| | 627 | 0, (SLAB_RECLAIM_ACCOUNT| |
628 | SLAB_MEM_SPREAD), | 628 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
629 | init_once); | 629 | init_once); |
630 | if (!qnx6_inode_cachep) | 630 | if (!qnx6_inode_cachep) |
631 | return -ENOMEM; | 631 | return -ENOMEM; |
diff --git a/fs/reiserfs/super.c b/fs/reiserfs/super.c index 4a62fe8cc3bf..05db7473bcb5 100644 --- a/fs/reiserfs/super.c +++ b/fs/reiserfs/super.c | |||
@@ -626,7 +626,8 @@ static int __init init_inodecache(void) | |||
626 | sizeof(struct | 626 | sizeof(struct |
627 | reiserfs_inode_info), | 627 | reiserfs_inode_info), |
628 | 0, (SLAB_RECLAIM_ACCOUNT| | 628 | 0, (SLAB_RECLAIM_ACCOUNT| |
629 | SLAB_MEM_SPREAD), | 629 | SLAB_MEM_SPREAD| |
630 | SLAB_ACCOUNT), | ||
630 | init_once); | 631 | init_once); |
631 | if (reiserfs_inode_cachep == NULL) | 632 | if (reiserfs_inode_cachep == NULL) |
632 | return -ENOMEM; | 633 | return -ENOMEM; |
diff --git a/fs/romfs/super.c b/fs/romfs/super.c index bb894e78a821..6b00ca357c58 100644 --- a/fs/romfs/super.c +++ b/fs/romfs/super.c | |||
@@ -619,8 +619,8 @@ static int __init init_romfs_fs(void) | |||
619 | romfs_inode_cachep = | 619 | romfs_inode_cachep = |
620 | kmem_cache_create("romfs_i", | 620 | kmem_cache_create("romfs_i", |
621 | sizeof(struct romfs_inode_info), 0, | 621 | sizeof(struct romfs_inode_info), 0, |
622 | SLAB_RECLAIM_ACCOUNT | SLAB_MEM_SPREAD, | 622 | SLAB_RECLAIM_ACCOUNT | SLAB_MEM_SPREAD | |
623 | romfs_i_init_once); | 623 | SLAB_ACCOUNT, romfs_i_init_once); |
624 | 624 | ||
625 | if (!romfs_inode_cachep) { | 625 | if (!romfs_inode_cachep) { |
626 | pr_err("Failed to initialise inode cache\n"); | 626 | pr_err("Failed to initialise inode cache\n"); |
diff --git a/fs/squashfs/super.c b/fs/squashfs/super.c index dded920cbc8f..5e79bfa4f260 100644 --- a/fs/squashfs/super.c +++ b/fs/squashfs/super.c | |||
@@ -419,7 +419,8 @@ static int __init init_inodecache(void) | |||
419 | { | 419 | { |
420 | squashfs_inode_cachep = kmem_cache_create("squashfs_inode_cache", | 420 | squashfs_inode_cachep = kmem_cache_create("squashfs_inode_cache", |
421 | sizeof(struct squashfs_inode_info), 0, | 421 | sizeof(struct squashfs_inode_info), 0, |
422 | SLAB_HWCACHE_ALIGN|SLAB_RECLAIM_ACCOUNT, init_once); | 422 | SLAB_HWCACHE_ALIGN|SLAB_RECLAIM_ACCOUNT|SLAB_ACCOUNT, |
423 | init_once); | ||
423 | 424 | ||
424 | return squashfs_inode_cachep ? 0 : -ENOMEM; | 425 | return squashfs_inode_cachep ? 0 : -ENOMEM; |
425 | } | 426 | } |
diff --git a/fs/sysv/inode.c b/fs/sysv/inode.c index 07ac18c355e7..d62c423a5a2d 100644 --- a/fs/sysv/inode.c +++ b/fs/sysv/inode.c | |||
@@ -346,7 +346,7 @@ int __init sysv_init_icache(void) | |||
346 | { | 346 | { |
347 | sysv_inode_cachep = kmem_cache_create("sysv_inode_cache", | 347 | sysv_inode_cachep = kmem_cache_create("sysv_inode_cache", |
348 | sizeof(struct sysv_inode_info), 0, | 348 | sizeof(struct sysv_inode_info), 0, |
349 | SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD, | 349 | SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD|SLAB_ACCOUNT, |
350 | init_once); | 350 | init_once); |
351 | if (!sysv_inode_cachep) | 351 | if (!sysv_inode_cachep) |
352 | return -ENOMEM; | 352 | return -ENOMEM; |
diff --git a/fs/ubifs/super.c b/fs/ubifs/super.c index 1fd90c079537..a233ba913be4 100644 --- a/fs/ubifs/super.c +++ b/fs/ubifs/super.c | |||
@@ -2248,8 +2248,8 @@ static int __init ubifs_init(void) | |||
2248 | 2248 | ||
2249 | ubifs_inode_slab = kmem_cache_create("ubifs_inode_slab", | 2249 | ubifs_inode_slab = kmem_cache_create("ubifs_inode_slab", |
2250 | sizeof(struct ubifs_inode), 0, | 2250 | sizeof(struct ubifs_inode), 0, |
2251 | SLAB_MEM_SPREAD | SLAB_RECLAIM_ACCOUNT, | 2251 | SLAB_MEM_SPREAD | SLAB_RECLAIM_ACCOUNT | |
2252 | &inode_slab_ctor); | 2252 | SLAB_ACCOUNT, &inode_slab_ctor); |
2253 | if (!ubifs_inode_slab) | 2253 | if (!ubifs_inode_slab) |
2254 | return -ENOMEM; | 2254 | return -ENOMEM; |
2255 | 2255 | ||
diff --git a/fs/udf/super.c b/fs/udf/super.c index 81155b9b445b..9c64a3ca9837 100644 --- a/fs/udf/super.c +++ b/fs/udf/super.c | |||
@@ -179,7 +179,8 @@ static int __init init_inodecache(void) | |||
179 | udf_inode_cachep = kmem_cache_create("udf_inode_cache", | 179 | udf_inode_cachep = kmem_cache_create("udf_inode_cache", |
180 | sizeof(struct udf_inode_info), | 180 | sizeof(struct udf_inode_info), |
181 | 0, (SLAB_RECLAIM_ACCOUNT | | 181 | 0, (SLAB_RECLAIM_ACCOUNT | |
182 | SLAB_MEM_SPREAD), | 182 | SLAB_MEM_SPREAD | |
183 | SLAB_ACCOUNT), | ||
183 | init_once); | 184 | init_once); |
184 | if (!udf_inode_cachep) | 185 | if (!udf_inode_cachep) |
185 | return -ENOMEM; | 186 | return -ENOMEM; |
diff --git a/fs/ufs/super.c b/fs/ufs/super.c index f6390eec02ca..442fd52ebffe 100644 --- a/fs/ufs/super.c +++ b/fs/ufs/super.c | |||
@@ -1427,7 +1427,7 @@ static int __init init_inodecache(void) | |||
1427 | ufs_inode_cachep = kmem_cache_create("ufs_inode_cache", | 1427 | ufs_inode_cachep = kmem_cache_create("ufs_inode_cache", |
1428 | sizeof(struct ufs_inode_info), | 1428 | sizeof(struct ufs_inode_info), |
1429 | 0, (SLAB_RECLAIM_ACCOUNT| | 1429 | 0, (SLAB_RECLAIM_ACCOUNT| |
1430 | SLAB_MEM_SPREAD), | 1430 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
1431 | init_once); | 1431 | init_once); |
1432 | if (ufs_inode_cachep == NULL) | 1432 | if (ufs_inode_cachep == NULL) |
1433 | return -ENOMEM; | 1433 | return -ENOMEM; |
diff --git a/fs/xfs/kmem.h b/fs/xfs/kmem.h index cc6b768fc068..d1c66e465ca5 100644 --- a/fs/xfs/kmem.h +++ b/fs/xfs/kmem.h | |||
@@ -84,6 +84,7 @@ kmem_zalloc(size_t size, xfs_km_flags_t flags) | |||
84 | #define KM_ZONE_HWALIGN SLAB_HWCACHE_ALIGN | 84 | #define KM_ZONE_HWALIGN SLAB_HWCACHE_ALIGN |
85 | #define KM_ZONE_RECLAIM SLAB_RECLAIM_ACCOUNT | 85 | #define KM_ZONE_RECLAIM SLAB_RECLAIM_ACCOUNT |
86 | #define KM_ZONE_SPREAD SLAB_MEM_SPREAD | 86 | #define KM_ZONE_SPREAD SLAB_MEM_SPREAD |
87 | #define KM_ZONE_ACCOUNT SLAB_ACCOUNT | ||
87 | 88 | ||
88 | #define kmem_zone kmem_cache | 89 | #define kmem_zone kmem_cache |
89 | #define kmem_zone_t struct kmem_cache | 90 | #define kmem_zone_t struct kmem_cache |
diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c index b35775752b74..59c9b7bd958d 100644 --- a/fs/xfs/xfs_super.c +++ b/fs/xfs/xfs_super.c | |||
@@ -1714,8 +1714,8 @@ xfs_init_zones(void) | |||
1714 | 1714 | ||
1715 | xfs_inode_zone = | 1715 | xfs_inode_zone = |
1716 | kmem_zone_init_flags(sizeof(xfs_inode_t), "xfs_inode", | 1716 | kmem_zone_init_flags(sizeof(xfs_inode_t), "xfs_inode", |
1717 | KM_ZONE_HWALIGN | KM_ZONE_RECLAIM | KM_ZONE_SPREAD, | 1717 | KM_ZONE_HWALIGN | KM_ZONE_RECLAIM | KM_ZONE_SPREAD | |
1718 | xfs_fs_inode_init_once); | 1718 | KM_ZONE_ACCOUNT, xfs_fs_inode_init_once); |
1719 | if (!xfs_inode_zone) | 1719 | if (!xfs_inode_zone) |
1720 | goto out_destroy_efi_zone; | 1720 | goto out_destroy_efi_zone; |
1721 | 1721 | ||
diff --git a/include/linux/thread_info.h b/include/linux/thread_info.h index ff307b548ed3..b4c2a485b28a 100644 --- a/include/linux/thread_info.h +++ b/include/linux/thread_info.h | |||
@@ -56,9 +56,10 @@ extern long do_no_restart_syscall(struct restart_block *parm); | |||
56 | #ifdef __KERNEL__ | 56 | #ifdef __KERNEL__ |
57 | 57 | ||
58 | #ifdef CONFIG_DEBUG_STACK_USAGE | 58 | #ifdef CONFIG_DEBUG_STACK_USAGE |
59 | # define THREADINFO_GFP (GFP_KERNEL | __GFP_NOTRACK | __GFP_ZERO) | 59 | # define THREADINFO_GFP (GFP_KERNEL_ACCOUNT | __GFP_NOTRACK | \ |
60 | __GFP_ZERO) | ||
60 | #else | 61 | #else |
61 | # define THREADINFO_GFP (GFP_KERNEL | __GFP_NOTRACK) | 62 | # define THREADINFO_GFP (GFP_KERNEL_ACCOUNT | __GFP_NOTRACK) |
62 | #endif | 63 | #endif |
63 | 64 | ||
64 | /* | 65 | /* |
diff --git a/ipc/mqueue.c b/ipc/mqueue.c index 161a1807e6ef..f4617cf07069 100644 --- a/ipc/mqueue.c +++ b/ipc/mqueue.c | |||
@@ -1438,7 +1438,7 @@ static int __init init_mqueue_fs(void) | |||
1438 | 1438 | ||
1439 | mqueue_inode_cachep = kmem_cache_create("mqueue_inode_cache", | 1439 | mqueue_inode_cachep = kmem_cache_create("mqueue_inode_cache", |
1440 | sizeof(struct mqueue_inode_info), 0, | 1440 | sizeof(struct mqueue_inode_info), 0, |
1441 | SLAB_HWCACHE_ALIGN, init_once); | 1441 | SLAB_HWCACHE_ALIGN|SLAB_ACCOUNT, init_once); |
1442 | if (mqueue_inode_cachep == NULL) | 1442 | if (mqueue_inode_cachep == NULL) |
1443 | return -ENOMEM; | 1443 | return -ENOMEM; |
1444 | 1444 | ||
diff --git a/kernel/cred.c b/kernel/cred.c index 71179a09c1d6..0c0cd8a62285 100644 --- a/kernel/cred.c +++ b/kernel/cred.c | |||
@@ -569,8 +569,8 @@ EXPORT_SYMBOL(revert_creds); | |||
569 | void __init cred_init(void) | 569 | void __init cred_init(void) |
570 | { | 570 | { |
571 | /* allocate a slab in which we can store credentials */ | 571 | /* allocate a slab in which we can store credentials */ |
572 | cred_jar = kmem_cache_create("cred_jar", sizeof(struct cred), | 572 | cred_jar = kmem_cache_create("cred_jar", sizeof(struct cred), 0, |
573 | 0, SLAB_HWCACHE_ALIGN|SLAB_PANIC, NULL); | 573 | SLAB_HWCACHE_ALIGN|SLAB_PANIC|SLAB_ACCOUNT, NULL); |
574 | } | 574 | } |
575 | 575 | ||
576 | /** | 576 | /** |
diff --git a/kernel/delayacct.c b/kernel/delayacct.c index ef90b04d783f..435c14a45118 100644 --- a/kernel/delayacct.c +++ b/kernel/delayacct.c | |||
@@ -34,7 +34,7 @@ __setup("nodelayacct", delayacct_setup_disable); | |||
34 | 34 | ||
35 | void delayacct_init(void) | 35 | void delayacct_init(void) |
36 | { | 36 | { |
37 | delayacct_cache = KMEM_CACHE(task_delay_info, SLAB_PANIC); | 37 | delayacct_cache = KMEM_CACHE(task_delay_info, SLAB_PANIC|SLAB_ACCOUNT); |
38 | delayacct_tsk_init(&init_task); | 38 | delayacct_tsk_init(&init_task); |
39 | } | 39 | } |
40 | 40 | ||
diff --git a/kernel/fork.c b/kernel/fork.c index 6774e6b2e96d..51915842f1c0 100644 --- a/kernel/fork.c +++ b/kernel/fork.c | |||
@@ -300,9 +300,9 @@ void __init fork_init(void) | |||
300 | #define ARCH_MIN_TASKALIGN L1_CACHE_BYTES | 300 | #define ARCH_MIN_TASKALIGN L1_CACHE_BYTES |
301 | #endif | 301 | #endif |
302 | /* create a slab on which task_structs can be allocated */ | 302 | /* create a slab on which task_structs can be allocated */ |
303 | task_struct_cachep = | 303 | task_struct_cachep = kmem_cache_create("task_struct", |
304 | kmem_cache_create("task_struct", arch_task_struct_size, | 304 | arch_task_struct_size, ARCH_MIN_TASKALIGN, |
305 | ARCH_MIN_TASKALIGN, SLAB_PANIC | SLAB_NOTRACK, NULL); | 305 | SLAB_PANIC|SLAB_NOTRACK|SLAB_ACCOUNT, NULL); |
306 | #endif | 306 | #endif |
307 | 307 | ||
308 | /* do the arch specific task caches init */ | 308 | /* do the arch specific task caches init */ |
@@ -1848,16 +1848,19 @@ void __init proc_caches_init(void) | |||
1848 | sighand_cachep = kmem_cache_create("sighand_cache", | 1848 | sighand_cachep = kmem_cache_create("sighand_cache", |
1849 | sizeof(struct sighand_struct), 0, | 1849 | sizeof(struct sighand_struct), 0, |
1850 | SLAB_HWCACHE_ALIGN|SLAB_PANIC|SLAB_DESTROY_BY_RCU| | 1850 | SLAB_HWCACHE_ALIGN|SLAB_PANIC|SLAB_DESTROY_BY_RCU| |
1851 | SLAB_NOTRACK, sighand_ctor); | 1851 | SLAB_NOTRACK|SLAB_ACCOUNT, sighand_ctor); |
1852 | signal_cachep = kmem_cache_create("signal_cache", | 1852 | signal_cachep = kmem_cache_create("signal_cache", |
1853 | sizeof(struct signal_struct), 0, | 1853 | sizeof(struct signal_struct), 0, |
1854 | SLAB_HWCACHE_ALIGN|SLAB_PANIC|SLAB_NOTRACK, NULL); | 1854 | SLAB_HWCACHE_ALIGN|SLAB_PANIC|SLAB_NOTRACK|SLAB_ACCOUNT, |
1855 | NULL); | ||
1855 | files_cachep = kmem_cache_create("files_cache", | 1856 | files_cachep = kmem_cache_create("files_cache", |
1856 | sizeof(struct files_struct), 0, | 1857 | sizeof(struct files_struct), 0, |
1857 | SLAB_HWCACHE_ALIGN|SLAB_PANIC|SLAB_NOTRACK, NULL); | 1858 | SLAB_HWCACHE_ALIGN|SLAB_PANIC|SLAB_NOTRACK|SLAB_ACCOUNT, |
1859 | NULL); | ||
1858 | fs_cachep = kmem_cache_create("fs_cache", | 1860 | fs_cachep = kmem_cache_create("fs_cache", |
1859 | sizeof(struct fs_struct), 0, | 1861 | sizeof(struct fs_struct), 0, |
1860 | SLAB_HWCACHE_ALIGN|SLAB_PANIC|SLAB_NOTRACK, NULL); | 1862 | SLAB_HWCACHE_ALIGN|SLAB_PANIC|SLAB_NOTRACK|SLAB_ACCOUNT, |
1863 | NULL); | ||
1861 | /* | 1864 | /* |
1862 | * FIXME! The "sizeof(struct mm_struct)" currently includes the | 1865 | * FIXME! The "sizeof(struct mm_struct)" currently includes the |
1863 | * whole struct cpumask for the OFFSTACK case. We could change | 1866 | * whole struct cpumask for the OFFSTACK case. We could change |
@@ -1867,8 +1870,9 @@ void __init proc_caches_init(void) | |||
1867 | */ | 1870 | */ |
1868 | mm_cachep = kmem_cache_create("mm_struct", | 1871 | mm_cachep = kmem_cache_create("mm_struct", |
1869 | sizeof(struct mm_struct), ARCH_MIN_MMSTRUCT_ALIGN, | 1872 | sizeof(struct mm_struct), ARCH_MIN_MMSTRUCT_ALIGN, |
1870 | SLAB_HWCACHE_ALIGN|SLAB_PANIC|SLAB_NOTRACK, NULL); | 1873 | SLAB_HWCACHE_ALIGN|SLAB_PANIC|SLAB_NOTRACK|SLAB_ACCOUNT, |
1871 | vm_area_cachep = KMEM_CACHE(vm_area_struct, SLAB_PANIC); | 1874 | NULL); |
1875 | vm_area_cachep = KMEM_CACHE(vm_area_struct, SLAB_PANIC|SLAB_ACCOUNT); | ||
1872 | mmap_init(); | 1876 | mmap_init(); |
1873 | nsproxy_cache_init(); | 1877 | nsproxy_cache_init(); |
1874 | } | 1878 | } |
diff --git a/kernel/pid.c b/kernel/pid.c index 78b3d9f80d44..f4ad91b746f1 100644 --- a/kernel/pid.c +++ b/kernel/pid.c | |||
@@ -604,5 +604,5 @@ void __init pidmap_init(void) | |||
604 | atomic_dec(&init_pid_ns.pidmap[0].nr_free); | 604 | atomic_dec(&init_pid_ns.pidmap[0].nr_free); |
605 | 605 | ||
606 | init_pid_ns.pid_cachep = KMEM_CACHE(pid, | 606 | init_pid_ns.pid_cachep = KMEM_CACHE(pid, |
607 | SLAB_HWCACHE_ALIGN | SLAB_PANIC); | 607 | SLAB_HWCACHE_ALIGN | SLAB_PANIC | SLAB_ACCOUNT); |
608 | } | 608 | } |
diff --git a/mm/nommu.c b/mm/nommu.c index 92be862c859b..fbf6f0f1d6c9 100644 --- a/mm/nommu.c +++ b/mm/nommu.c | |||
@@ -560,7 +560,7 @@ void __init mmap_init(void) | |||
560 | 560 | ||
561 | ret = percpu_counter_init(&vm_committed_as, 0, GFP_KERNEL); | 561 | ret = percpu_counter_init(&vm_committed_as, 0, GFP_KERNEL); |
562 | VM_BUG_ON(ret); | 562 | VM_BUG_ON(ret); |
563 | vm_region_jar = KMEM_CACHE(vm_region, SLAB_PANIC); | 563 | vm_region_jar = KMEM_CACHE(vm_region, SLAB_PANIC|SLAB_ACCOUNT); |
564 | } | 564 | } |
565 | 565 | ||
566 | /* | 566 | /* |
@@ -428,8 +428,10 @@ static void anon_vma_ctor(void *data) | |||
428 | void __init anon_vma_init(void) | 428 | void __init anon_vma_init(void) |
429 | { | 429 | { |
430 | anon_vma_cachep = kmem_cache_create("anon_vma", sizeof(struct anon_vma), | 430 | anon_vma_cachep = kmem_cache_create("anon_vma", sizeof(struct anon_vma), |
431 | 0, SLAB_DESTROY_BY_RCU|SLAB_PANIC, anon_vma_ctor); | 431 | 0, SLAB_DESTROY_BY_RCU|SLAB_PANIC|SLAB_ACCOUNT, |
432 | anon_vma_chain_cachep = KMEM_CACHE(anon_vma_chain, SLAB_PANIC); | 432 | anon_vma_ctor); |
433 | anon_vma_chain_cachep = KMEM_CACHE(anon_vma_chain, | ||
434 | SLAB_PANIC|SLAB_ACCOUNT); | ||
433 | } | 435 | } |
434 | 436 | ||
435 | /* | 437 | /* |
diff --git a/mm/shmem.c b/mm/shmem.c index 5813b7fa85b6..9e60093aca3f 100644 --- a/mm/shmem.c +++ b/mm/shmem.c | |||
@@ -3064,7 +3064,7 @@ static int shmem_init_inodecache(void) | |||
3064 | { | 3064 | { |
3065 | shmem_inode_cachep = kmem_cache_create("shmem_inode_cache", | 3065 | shmem_inode_cachep = kmem_cache_create("shmem_inode_cache", |
3066 | sizeof(struct shmem_inode_info), | 3066 | sizeof(struct shmem_inode_info), |
3067 | 0, SLAB_PANIC, shmem_init_inode); | 3067 | 0, SLAB_PANIC|SLAB_ACCOUNT, shmem_init_inode); |
3068 | return 0; | 3068 | return 0; |
3069 | } | 3069 | } |
3070 | 3070 | ||
diff --git a/net/socket.c b/net/socket.c index 91c2de6f5020..c044d1e8508c 100644 --- a/net/socket.c +++ b/net/socket.c | |||
@@ -294,7 +294,7 @@ static int init_inodecache(void) | |||
294 | 0, | 294 | 0, |
295 | (SLAB_HWCACHE_ALIGN | | 295 | (SLAB_HWCACHE_ALIGN | |
296 | SLAB_RECLAIM_ACCOUNT | | 296 | SLAB_RECLAIM_ACCOUNT | |
297 | SLAB_MEM_SPREAD), | 297 | SLAB_MEM_SPREAD | SLAB_ACCOUNT), |
298 | init_once); | 298 | init_once); |
299 | if (sock_inode_cachep == NULL) | 299 | if (sock_inode_cachep == NULL) |
300 | return -ENOMEM; | 300 | return -ENOMEM; |
diff --git a/net/sunrpc/rpc_pipe.c b/net/sunrpc/rpc_pipe.c index d81186d34558..14f45bf0410c 100644 --- a/net/sunrpc/rpc_pipe.c +++ b/net/sunrpc/rpc_pipe.c | |||
@@ -1500,7 +1500,7 @@ int register_rpc_pipefs(void) | |||
1500 | rpc_inode_cachep = kmem_cache_create("rpc_inode_cache", | 1500 | rpc_inode_cachep = kmem_cache_create("rpc_inode_cache", |
1501 | sizeof(struct rpc_inode), | 1501 | sizeof(struct rpc_inode), |
1502 | 0, (SLAB_HWCACHE_ALIGN|SLAB_RECLAIM_ACCOUNT| | 1502 | 0, (SLAB_HWCACHE_ALIGN|SLAB_RECLAIM_ACCOUNT| |
1503 | SLAB_MEM_SPREAD), | 1503 | SLAB_MEM_SPREAD|SLAB_ACCOUNT), |
1504 | init_once); | 1504 | init_once); |
1505 | if (!rpc_inode_cachep) | 1505 | if (!rpc_inode_cachep) |
1506 | return -ENOMEM; | 1506 | return -ENOMEM; |