diff options
56 files changed, 178 insertions, 277 deletions
diff --git a/arch/powerpc/platforms/cell/spufs/inode.c b/arch/powerpc/platforms/cell/spufs/inode.c index a93f328a7317..7150730e2ff1 100644 --- a/arch/powerpc/platforms/cell/spufs/inode.c +++ b/arch/powerpc/platforms/cell/spufs/inode.c | |||
| @@ -71,9 +71,7 @@ spufs_init_once(void *p, struct kmem_cache * cachep, unsigned long flags) | |||
| 71 | { | 71 | { |
| 72 | struct spufs_inode_info *ei = p; | 72 | struct spufs_inode_info *ei = p; |
| 73 | 73 | ||
| 74 | if (flags & SLAB_CTOR_CONSTRUCTOR) { | 74 | inode_init_once(&ei->vfs_inode); |
| 75 | inode_init_once(&ei->vfs_inode); | ||
| 76 | } | ||
| 77 | } | 75 | } |
| 78 | 76 | ||
| 79 | static struct inode * | 77 | static struct inode * |
diff --git a/drivers/mtd/ubi/eba.c b/drivers/mtd/ubi/eba.c index 3dba5733ed1f..74002945b71b 100644 --- a/drivers/mtd/ubi/eba.c +++ b/drivers/mtd/ubi/eba.c | |||
| @@ -940,9 +940,6 @@ static void ltree_entry_ctor(void *obj, struct kmem_cache *cache, | |||
| 940 | { | 940 | { |
| 941 | struct ltree_entry *le = obj; | 941 | struct ltree_entry *le = obj; |
| 942 | 942 | ||
| 943 | if (flags & SLAB_CTOR_CONSTRUCTOR) | ||
| 944 | return; | ||
| 945 | |||
| 946 | le->users = 0; | 943 | le->users = 0; |
| 947 | init_rwsem(&le->mutex); | 944 | init_rwsem(&le->mutex); |
| 948 | } | 945 | } |
diff --git a/fs/adfs/super.c b/fs/adfs/super.c index 30c296508497..de2ed5ca3351 100644 --- a/fs/adfs/super.c +++ b/fs/adfs/super.c | |||
| @@ -232,8 +232,7 @@ static void init_once(void * foo, struct kmem_cache * cachep, unsigned long flag | |||
| 232 | { | 232 | { |
| 233 | struct adfs_inode_info *ei = (struct adfs_inode_info *) foo; | 233 | struct adfs_inode_info *ei = (struct adfs_inode_info *) foo; |
| 234 | 234 | ||
| 235 | if (flags & SLAB_CTOR_CONSTRUCTOR) | 235 | inode_init_once(&ei->vfs_inode); |
| 236 | inode_init_once(&ei->vfs_inode); | ||
| 237 | } | 236 | } |
| 238 | 237 | ||
| 239 | static int init_inodecache(void) | 238 | static int init_inodecache(void) |
diff --git a/fs/affs/super.c b/fs/affs/super.c index beff7d21e6e2..b800d451cd60 100644 --- a/fs/affs/super.c +++ b/fs/affs/super.c | |||
| @@ -87,11 +87,9 @@ static void init_once(void * foo, struct kmem_cache * cachep, unsigned long flag | |||
| 87 | { | 87 | { |
| 88 | struct affs_inode_info *ei = (struct affs_inode_info *) foo; | 88 | struct affs_inode_info *ei = (struct affs_inode_info *) foo; |
| 89 | 89 | ||
| 90 | if (flags & SLAB_CTOR_CONSTRUCTOR) { | 90 | init_MUTEX(&ei->i_link_lock); |
| 91 | init_MUTEX(&ei->i_link_lock); | 91 | init_MUTEX(&ei->i_ext_lock); |
| 92 | init_MUTEX(&ei->i_ext_lock); | 92 | inode_init_once(&ei->vfs_inode); |
| 93 | inode_init_once(&ei->vfs_inode); | ||
| 94 | } | ||
| 95 | } | 93 | } |
| 96 | 94 | ||
| 97 | static int init_inodecache(void) | 95 | static int init_inodecache(void) |
diff --git a/fs/afs/super.c b/fs/afs/super.c index 370cecc910db..8d47ad88a093 100644 --- a/fs/afs/super.c +++ b/fs/afs/super.c | |||
| @@ -451,17 +451,15 @@ static void afs_i_init_once(void *_vnode, struct kmem_cache *cachep, | |||
| 451 | { | 451 | { |
| 452 | struct afs_vnode *vnode = _vnode; | 452 | struct afs_vnode *vnode = _vnode; |
| 453 | 453 | ||
| 454 | if (flags & SLAB_CTOR_CONSTRUCTOR) { | 454 | memset(vnode, 0, sizeof(*vnode)); |
| 455 | memset(vnode, 0, sizeof(*vnode)); | 455 | inode_init_once(&vnode->vfs_inode); |
| 456 | inode_init_once(&vnode->vfs_inode); | 456 | init_waitqueue_head(&vnode->update_waitq); |
| 457 | init_waitqueue_head(&vnode->update_waitq); | 457 | mutex_init(&vnode->permits_lock); |
| 458 | mutex_init(&vnode->permits_lock); | 458 | mutex_init(&vnode->validate_lock); |
| 459 | mutex_init(&vnode->validate_lock); | 459 | spin_lock_init(&vnode->writeback_lock); |
| 460 | spin_lock_init(&vnode->writeback_lock); | 460 | spin_lock_init(&vnode->lock); |
| 461 | spin_lock_init(&vnode->lock); | 461 | INIT_LIST_HEAD(&vnode->writebacks); |
| 462 | INIT_LIST_HEAD(&vnode->writebacks); | 462 | INIT_WORK(&vnode->cb_broken_work, afs_broken_callback_work); |
| 463 | INIT_WORK(&vnode->cb_broken_work, afs_broken_callback_work); | ||
| 464 | } | ||
| 465 | } | 463 | } |
| 466 | 464 | ||
| 467 | /* | 465 | /* |
diff --git a/fs/befs/linuxvfs.c b/fs/befs/linuxvfs.c index fe96108a788d..a5c5171c2828 100644 --- a/fs/befs/linuxvfs.c +++ b/fs/befs/linuxvfs.c | |||
| @@ -292,10 +292,8 @@ befs_destroy_inode(struct inode *inode) | |||
| 292 | static void init_once(void * foo, struct kmem_cache * cachep, unsigned long flags) | 292 | static void init_once(void * foo, struct kmem_cache * cachep, unsigned long flags) |
| 293 | { | 293 | { |
| 294 | struct befs_inode_info *bi = (struct befs_inode_info *) foo; | 294 | struct befs_inode_info *bi = (struct befs_inode_info *) foo; |
| 295 | 295 | ||
| 296 | if (flags & SLAB_CTOR_CONSTRUCTOR) { | 296 | inode_init_once(&bi->vfs_inode); |
| 297 | inode_init_once(&bi->vfs_inode); | ||
| 298 | } | ||
| 299 | } | 297 | } |
| 300 | 298 | ||
| 301 | static void | 299 | static void |
diff --git a/fs/bfs/inode.c b/fs/bfs/inode.c index edc08d89aabc..58c7bd9f5301 100644 --- a/fs/bfs/inode.c +++ b/fs/bfs/inode.c | |||
| @@ -248,8 +248,7 @@ static void init_once(void * foo, struct kmem_cache * cachep, unsigned long flag | |||
| 248 | { | 248 | { |
| 249 | struct bfs_inode_info *bi = foo; | 249 | struct bfs_inode_info *bi = foo; |
| 250 | 250 | ||
| 251 | if (flags & SLAB_CTOR_CONSTRUCTOR) | 251 | inode_init_once(&bi->vfs_inode); |
| 252 | inode_init_once(&bi->vfs_inode); | ||
| 253 | } | 252 | } |
| 254 | 253 | ||
| 255 | static int init_inodecache(void) | 254 | static int init_inodecache(void) |
diff --git a/fs/block_dev.c b/fs/block_dev.c index 742899240872..ea1480a16f51 100644 --- a/fs/block_dev.c +++ b/fs/block_dev.c | |||
| @@ -458,17 +458,15 @@ static void init_once(void * foo, struct kmem_ | |||
