Re: [PATCH] xfs: simplify kmem_{zone_}zalloc

From: Dave Chinner
Date: Fri Nov 01 2013 - 16:58:16 EST


On Fri, Nov 01, 2013 at 06:25:11PM +0800, Gu Zheng wrote:
> Introduce flag KM_ZERO which is used to alloc zeroed entry, and convert
> kmem_{zone_}zalloc to call kmem_{zone_}alloc() with KM_ZERO directly,
> in order to avoid the setting to zero step.
>
>
> Signed-off-by: Gu Zheng <guz.fnst@xxxxxxxxxxxxxx>
> ---
> fs/xfs/kmem.c | 14 ++------------
> fs/xfs/kmem.h | 7 ++++++-
> 2 files changed, 8 insertions(+), 13 deletions(-)
>
> diff --git a/fs/xfs/kmem.c b/fs/xfs/kmem.c
> index a02cfb9..d56fcc9 100644
> --- a/fs/xfs/kmem.c
> +++ b/fs/xfs/kmem.c
> @@ -65,12 +65,7 @@ kmem_alloc(size_t size, xfs_km_flags_t flags)
> void *
> kmem_zalloc(size_t size, xfs_km_flags_t flags)
> {
> - void *ptr;
> -
> - ptr = kmem_alloc(size, flags);
> - if (ptr)
> - memset((char *)ptr, 0, (int)size);
> - return ptr;
> + return kmem_alloc(size, flags | KM_ZERO);
> }
>
> void *
> @@ -132,10 +127,5 @@ kmem_zone_alloc(kmem_zone_t *zone, xfs_km_flags_t flags)
> void *
> kmem_zone_zalloc(kmem_zone_t *zone, xfs_km_flags_t flags)
> {
> - void *ptr;
> -
> - ptr = kmem_zone_alloc(zone, flags);
> - if (ptr)
> - memset((char *)ptr, 0, kmem_cache_size(zone));
> - return ptr;
> + return kmem_zone_alloc(zone, flags | KM_ZERO);
> }

These functions should be made static inline functions in kmem.h
seeing as they are now just a simple wrapper.

Otherwise it's a nice cleanup.

Cheers,

Dave.
--
Dave Chinner
david@xxxxxxxxxxxxx
--
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/