2006-01-28 00:21:01

by Matthew Dobson

[permalink] [raw]
Subject: [patch 6/6] Create and Use common mempool allocators

plain text document attachment (mempool-use_kzalloc_allocator.patch)
From: Matthew Dobson <[email protected]>
Subject: [patch 6/6] mempool - Use common mempool kzalloc allocator

This patch changes a mempool user, which is basically just a wrapper around
kzalloc(), to use the common mempool_kmalloc/kfree, rather than its own wrapper
function, removing duplicated code.

Signed-off-by: Matthew Dobson <[email protected]>

drivers/md/multipath.c | 16 ++--------------
1 files changed, 2 insertions(+), 14 deletions(-)

Index: linux-2.6.16-rc1-mm3+mempool_work/drivers/md/multipath.c
===================================================================
--- linux-2.6.16-rc1-mm3+mempool_work.orig/drivers/md/multipath.c
+++ linux-2.6.16-rc1-mm3+mempool_work/drivers/md/multipath.c
@@ -35,18 +35,6 @@
#define NR_RESERVED_BUFS 32


-static void *mp_pool_alloc(gfp_t gfp_flags, void *data)
-{
- struct multipath_bh *mpb;
- mpb = kzalloc(sizeof(*mpb), gfp_flags);
- return mpb;
-}
-
-static void mp_pool_free(void *mpb, void *data)
-{
- kfree(mpb);
-}
-
static int multipath_map (multipath_conf_t *conf)
{
int i, disks = conf->raid_disks;
@@ -495,8 +483,8 @@ static int multipath_run (mddev_t *mddev
mddev->degraded = conf->raid_disks = conf->working_disks;

conf->pool = mempool_create(NR_RESERVED_BUFS,
- mp_pool_alloc, mp_pool_free,
- NULL);
+ mempool_kzalloc, mempool_kfree,
+ sizeof(struct multipath_bh));
if (conf->pool == NULL) {
printk(KERN_ERR
"multipath: couldn't allocate memory for %s\n",

--