[PATCH] mm: Make it easier to catch NULL cache names

From: Benjamin Herrenschmidt
Date: Mon Jul 27 2009 - 21:49:20 EST


Right now, if you inadvertently pass NULL to kmem_cache_create() at boot
time, it crashes much later after boot somewhere deep inside sysfs which
makes it very non obvious to figure out what's going on.

Signed-off-by: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
---

Yes, I did hit that :-) Something in ppc land using an array of caches
and got the names array out of sync with changes to the list of indices.

diff --git a/mm/slub.c b/mm/slub.c
index b9f1491..b5b5653 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -3292,6 +3292,8 @@ struct kmem_cache *kmem_cache_create(const char *name, size_t size,
{
struct kmem_cache *s;

+ BUG_ON(name == NULL);
+
down_write(&slub_lock);
s = find_mergeable(size, align, flags, name, ctor);
if (s) {
--
1.6.1.2.14.gf26b5



--
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/