[PATCH v2 17/15] slab: replace non-existing 'struct freelist *' with 'void *'

From: Joonsoo Kim
Date: Wed Oct 30 2013 - 06:04:03 EST

There is no 'strcut freelist', but codes use pointer to 'struct freelist'.
Although compiler doesn't complain anything about this wrong usage and
codes work fine, but fixing it is better.

Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>

diff --git a/mm/slab.c b/mm/slab.c
index a8a9349..a983e30 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -1954,7 +1954,7 @@ static void slab_destroy_debugcheck(struct kmem_cache *cachep,
static void slab_destroy(struct kmem_cache *cachep, struct page *page)
- struct freelist *freelist;
+ void *freelist;

freelist = page->freelist;
slab_destroy_debugcheck(cachep, page);
@@ -2520,11 +2520,11 @@ int __kmem_cache_shutdown(struct kmem_cache *cachep)
* kmem_find_general_cachep till the initialization is complete.
* Hence we cannot have freelist_cache same as the original cache.
-static struct freelist *alloc_slabmgmt(struct kmem_cache *cachep,
+static void *alloc_slabmgmt(struct kmem_cache *cachep,
struct page *page, int colour_off,
gfp_t local_flags, int nodeid)
- struct freelist *freelist;
+ void *freelist;
void *addr = page_address(page);

if (OFF_SLAB(cachep)) {
@@ -2646,7 +2646,7 @@ static void slab_put_obj(struct kmem_cache *cachep, struct page *page,
* virtual address for kfree, ksize, and slab debugging.
static void slab_map_pages(struct kmem_cache *cache, struct page *page,
- struct freelist *freelist)
+ void *freelist)
page->slab_cache = cache;
page->freelist = freelist;
@@ -2659,7 +2659,7 @@ static void slab_map_pages(struct kmem_cache *cache, struct page *page,
static int cache_grow(struct kmem_cache *cachep,
gfp_t flags, int nodeid, struct page *page)
- struct freelist *freelist;
+ void *freelist;
size_t offset;
gfp_t local_flags;
struct kmem_cache_node *n;

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/