staging: tidspbridge: remove gs memory allocator
authorIonut Nicu <ionut.nicu@gmail.com>
Sun, 21 Nov 2010 10:46:19 +0000 (10:46 +0000)
committerOmar Ramirez Luna <omar.ramirez@ti.com>
Sat, 5 Feb 2011 02:11:26 +0000 (20:11 -0600)
Remove unnecessary wrappers for linux kernel memory
allocation primitives.

Signed-off-by: Ionut Nicu <ionut.nicu@mindbit.ro>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
drivers/staging/tidspbridge/Makefile
drivers/staging/tidspbridge/gen/gb.c
drivers/staging/tidspbridge/gen/gh.c
drivers/staging/tidspbridge/gen/gs.c [deleted file]
drivers/staging/tidspbridge/include/dspbridge/gs.h [deleted file]

index 41c644c3318f46fe632173d12f50aad2af8ea4f1..648e392ce7ab57e785de0be786c440358f59e7d1 100644 (file)
@@ -1,6 +1,6 @@
 obj-$(CONFIG_TIDSPBRIDGE)      += bridgedriver.o
 
-libgen = gen/gb.o gen/gs.o gen/gh.o gen/uuidutil.o
+libgen = gen/gb.o gen/gh.o gen/uuidutil.o
 libcore = core/chnl_sm.o core/msg_sm.o core/io_sm.o core/tiomap3430.o \
                core/tiomap3430_pwr.o core/tiomap_io.o \
                core/ue_deh.o core/wdt.o core/dsp-clock.o core/sync.o
index 9f590230473b19f0f7ec0c3eeb66f2b7e7d7be14..3c0e04cc2b0f159189914ab39eae46694980a0ab 100644 (file)
@@ -19,7 +19,6 @@
 /*  ----------------------------------- DSP/BIOS Bridge */
 #include <linux/types.h>
 /*  ----------------------------------- This */
-#include <dspbridge/gs.h>
 #include <dspbridge/gb.h>
 
 struct gb_t_map {
@@ -52,17 +51,17 @@ struct gb_t_map *gb_create(u32 len)
 {
        struct gb_t_map *map;
        u32 i;
-       map = (struct gb_t_map *)gs_alloc(sizeof(struct gb_t_map));
+       map = kzalloc(sizeof(struct gb_t_map), GFP_KERNEL);
        if (map != NULL) {
                map->len = len;
                map->wcnt = len / BITS_PER_LONG + 1;
-               map->words = (u32 *) gs_alloc(map->wcnt * sizeof(u32));
+               map->words = kzalloc(map->wcnt * sizeof(u32), GFP_KERNEL);
                if (map->words != NULL) {
                        for (i = 0; i < map->wcnt; i++)
                                map->words[i] = 0L;
 
                } else {
-                       gs_frees(map, sizeof(struct gb_t_map));
+                       kfree(map);
                        map = NULL;
                }
        }
@@ -78,8 +77,8 @@ struct gb_t_map *gb_create(u32 len)
 
 void gb_delete(struct gb_t_map *map)
 {
-       gs_frees(map->words, map->wcnt * sizeof(u32));
-       gs_frees(map, sizeof(struct gb_t_map));
+       kfree(map->words);
+       kfree(map);
 }
 
 /*
index f72d943c48064a534d34f8d1517081402234a62d..cd725033f274cf3d7b745faa0b4268f158a500f2 100644 (file)
@@ -17,9 +17,6 @@
 #include <linux/types.h>
 
 #include <dspbridge/host_os.h>
-
-#include <dspbridge/gs.h>
-
 #include <dspbridge/gh.h>
 
 struct element {
@@ -37,8 +34,6 @@ struct gh_t_hash_tab {
 };
 
 static void noop(void *p);
-static s32 cur_init;
-static void myfree(void *ptr, s32 size);
 
 /*
  *  ======== gh_create ========
@@ -51,8 +46,7 @@ struct gh_t_hash_tab *gh_create(u16 max_bucket, u16 val_size,
 {
        struct gh_t_hash_tab *hash_tab;
        u16 i;
-       hash_tab =
-           (struct gh_t_hash_tab *)gs_alloc(sizeof(struct gh_t_hash_tab));
+       hash_tab = kzalloc(sizeof(struct gh_t_hash_tab), GFP_KERNEL);
        if (hash_tab == NULL)
                return NULL;
        hash_tab->max_bucket = max_bucket;
@@ -62,7 +56,7 @@ struct gh_t_hash_tab *gh_create(u16 max_bucket, u16 val_size,
        hash_tab->delete = delete == NULL ? noop : delete;
 
        hash_tab->buckets = (struct element **)
-           gs_alloc(sizeof(struct element *) * max_bucket);
+           kzalloc(sizeof(struct element *) * max_bucket, GFP_KERNEL);
        if (hash_tab->buckets == NULL) {
                gh_delete(hash_tab);
                return NULL;
@@ -89,17 +83,14 @@ void gh_delete(struct gh_t_hash_tab *hash_tab)
                                     elem = next) {
                                        next = elem->next;
                                        (*hash_tab->delete) (elem->data);
-                                       myfree(elem,
-                                              sizeof(struct element) - 1 +
-                                              hash_tab->val_size);
+                                       kfree(elem);
                                }
                        }
 
-                       myfree(hash_tab->buckets, sizeof(struct element *)
-                              * hash_tab->max_bucket);
+                       kfree(hash_tab->buckets);
                }
 
-               myfree(hash_tab, sizeof(struct gh_t_hash_tab));
+               kfree(hash_tab);
        }
 }
 
@@ -109,9 +100,7 @@ void gh_delete(struct gh_t_hash_tab *hash_tab)
 
 void gh_exit(void)
 {
-       if (cur_init-- == 1)
-               gs_exit();
-
+       /* Do nothing */
 }
 
 /*
@@ -138,8 +127,7 @@ void *gh_find(struct gh_t_hash_tab *hash_tab, void *key)
 
 void gh_init(void)
 {
-       if (cur_init++ == 0)
-               gs_init();
+       /* Do nothing */
 }
 
 /*
@@ -152,8 +140,8 @@ void *gh_insert(struct gh_t_hash_tab *hash_tab, void *key, void *value)
        u16 i;
        char *src, *dst;
 
-       elem = (struct element *)gs_alloc(sizeof(struct element) - 1 +
-                                         hash_tab->val_size);
+       elem = kzalloc(sizeof(struct element) - 1 + hash_tab->val_size,
+                       GFP_KERNEL);
        if (elem != NULL) {
 
                dst = (char *)elem->data;
@@ -180,14 +168,6 @@ static void noop(void *p)
        p = p;                  /* stifle compiler warning */
 }
 
-/*
- *  ======== myfree ========
- */
-static void myfree(void *ptr, s32 size)
-{
-       gs_free(ptr);
-}
-
 #ifdef CONFIG_TIDSPBRIDGE_BACKTRACE
 /**
  * gh_iterate() - This function goes through all the elements in the hash table
diff --git a/drivers/staging/tidspbridge/gen/gs.c b/drivers/staging/tidspbridge/gen/gs.c
deleted file mode 100644 (file)
index 8335bf5..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * gs.c
- *
- * DSP-BIOS Bridge driver support functions for TI OMAP processors.
- *
- * General storage memory allocator services.
- *
- * Copyright (C) 2005-2006 Texas Instruments, Inc.
- *
- * This package is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * THIS PACKAGE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#include <linux/types.h>
-/*  ----------------------------------- DSP/BIOS Bridge */
-#include <dspbridge/dbdefs.h>
-
-/*  ----------------------------------- This */
-#include <dspbridge/gs.h>
-
-#include <linux/slab.h>
-
-/*  ----------------------------------- Globals */
-static u32 cumsize;
-
-/*
- *  ======== gs_alloc ========
- *  purpose:
- *      Allocates memory of the specified size.
- */
-void *gs_alloc(u32 size)
-{
-       void *p;
-
-       p = kzalloc(size, GFP_KERNEL);
-       if (p == NULL)
-               return NULL;
-       cumsize += size;
-       return p;
-}
-
-/*
- *  ======== gs_exit ========
- *  purpose:
- *      Discontinue the usage of the GS module.
- */
-void gs_exit(void)
-{
-       /* Do nothing */
-}
-
-/*
- *  ======== gs_free ========
- *  purpose:
- *      Frees the memory.
- */
-void gs_free(void *ptr)
-{
-       kfree(ptr);
-       /* ack! no size info */
-       /* cumsize -= size; */
-}
-
-/*
- *  ======== gs_frees ========
- *  purpose:
- *      Frees the memory.
- */
-void gs_frees(void *ptr, u32 size)
-{
-       kfree(ptr);
-       cumsize -= size;
-}
-
-/*
- *  ======== gs_init ========
- *  purpose:
- *      Initializes the GS module.
- */
-void gs_init(void)
-{
-       /* Do nothing */
-}
diff --git a/drivers/staging/tidspbridge/include/dspbridge/gs.h b/drivers/staging/tidspbridge/include/dspbridge/gs.h
deleted file mode 100644 (file)
index f32d8d9..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * gs.h
- *
- * DSP-BIOS Bridge driver support functions for TI OMAP processors.
- *
- * Memory allocation/release wrappers.  This module allows clients to
- * avoid OS spacific issues related to memory allocation.  It also provides
- * simple diagnostic capabilities to assist in the detection of memory
- * leaks.
- *
- * Copyright (C) 2005-2006 Texas Instruments, Inc.
- *
- * This package is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * THIS PACKAGE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#ifndef GS_
-#define GS_
-
-/*
- *  ======== gs_alloc ========
- *  Alloc size bytes of space.  Returns pointer to space
- *  allocated, otherwise NULL.
- */
-extern void *gs_alloc(u32 size);
-
-/*
- *  ======== gs_exit ========
- *  Module exit.  Do not change to "#define gs_init()"; in
- *  some environments this operation must actually do some work!
- */
-extern void gs_exit(void);
-
-/*
- *  ======== gs_free ========
- *  Free space allocated by gs_alloc() or GS_calloc().
- */
-extern void gs_free(void *ptr);
-
-/*
- *  ======== gs_frees ========
- *  Free space allocated by gs_alloc() or GS_calloc() and assert that
- *  the size of the allocation is size bytes.
- */
-extern void gs_frees(void *ptr, u32 size);
-
-/*
- *  ======== gs_init ========
- *  Module initialization.  Do not change to "#define gs_init()"; in
- *  some environments this operation must actually do some work!
- */
-extern void gs_init(void);
-
-#endif /*GS_ */