Re: [PATCH 1/4] ext2: remove inode constructor

From: Andrew Morton
Date: Wed May 09 2007 - 16:40:44 EST


On Sat, 5 May 2007 12:57:46 +0300 (EEST)
Pekka J Enberg <penberg@xxxxxxxxxxxxxx> wrote:

> From: Pekka Enberg <penberg@xxxxxxxxxxxxxx>
>
> As alloc_inode() touches the same cache line as init_once(), we gain
> nothing from using slab constructors.
>
> Cc: Stephen C. Tweedie <sct@xxxxxxxxxx>
> Cc: Andreas Dilger <adilger@xxxxxxxxxxxxx>
> Cc: Christoph Lameter <clameter@xxxxxxx>
> Signed-off-by: Pekka Enberg <penberg@xxxxxxxxxxxxxx>
> ---
> fs/ext2/super.c | 32 +++++++++++++-------------------
> 1 file changed, 13 insertions(+), 19 deletions(-)
>
> Index: 26-mm/fs/ext2/super.c
> ===================================================================
> --- 26-mm.orig/fs/ext2/super.c 2007-05-05 12:26:15.000000000 +0300
> +++ 26-mm/fs/ext2/super.c 2007-05-05 12:30:50.000000000 +0300
> @@ -140,16 +140,24 @@ static struct kmem_cache * ext2_inode_ca
> static struct inode *ext2_alloc_inode(struct super_block *sb)
> {
> struct ext2_inode_info *ei;
> - ei = (struct ext2_inode_info *)kmem_cache_alloc(ext2_inode_cachep,
> - GFP_KERNEL|__GFP_RECLAIMABLE);
> + struct inode *inode;
> +
> + ei = kmem_cache_alloc(ext2_inode_cachep, GFP_KERNEL|__GFP_RECLAIMABLE);
> if (!ei)
> return NULL;
> + rwlock_init(&ei->i_meta_lock);
> +#ifdef CONFIG_EXT2_FS_XATTR
> + init_rwsem(&ei->xattr_sem);
> +#endif
> + mutex_init(&ei->truncate_mutex);

ext2 has no truncate_mutex.


These patches are rather tangled up with the unmerged __GFP_RECLAIMABLE
stuff. I'll duck them for now.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/