Make it clear that _destroy() won't do the kmem_cache_free()s for you (it seems).
--- linux-linus/mm/slab.c Wed Sep 18 19:48:54 2002
+++ linux/mm/slab.c Wed Sep 18 22:27:32 2002
@@ -1018,6 +1018,8 @@
* cache being allocated each time a module is loaded and unloaded, if the
* module doesn't have persistent in-kernel storage across loads and unloads.
+ * The cache must be empty before calling this function.
* The caller must guarantee that noone will allocate memory from the cache
* during the kmem_cache_destroy().