SLUB: Deal with annoying gcc warning on kfree()
authorChristoph Lameter <clameter@sgi.com>
Fri, 8 Feb 2008 01:47:41 +0000 (17:47 -0800)
committerChristoph Lameter <christoph@stapp.engr.sgi.com>
Fri, 8 Feb 2008 01:47:41 +0000 (17:47 -0800)
gcc 4.2 spits out an annoying warning if one casts a const void *
pointer to a void * pointer. No warning is generated if the
conversion is done through an assignment.

Signed-off-by: Christoph Lameter <clameter@sgi.com>
mm/slub.c

index 3f056677fa8fea56ef3a678cc8e9d8a8d27b2371..2dacaf519c4dcfdde8c537ba9262258efaa9d418 100644 (file)
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -2601,6 +2601,7 @@ EXPORT_SYMBOL(ksize);
 void kfree(const void *x)
 {
        struct page *page;
+       void *object = (void *)x;
 
        if (unlikely(ZERO_OR_NULL_PTR(x)))
                return;
@@ -2610,7 +2611,7 @@ void kfree(const void *x)
                put_page(page);
                return;
        }
-       slab_free(page->slab, page, (void *)x, __builtin_return_address(0));
+       slab_free(page->slab, page, object, __builtin_return_address(0));
 }
 EXPORT_SYMBOL(kfree);