On Sat, 2012-07-14 at 15:01 +0300, Pekka Enberg wrote: > I'm not exactly loving that either. > > It'd probably be better to reshuffle the code so that the debug checks > end up in separate functions that are no-op for !CONFIG_DEBUG_VM. That > way the _labels_ are used unconditionally although there's no actual > code generated.
I can work on reshuffling the code. Do have a question though. This following sanity check is currently done only when CONFIG_DEBUG_VM is defined. However, it does appear to be something that is that should be checked even in regular path. struct kmem_cache *kmem_cache_create(const char *name, size_t size, size_t align, unsigned long flags, void (*ctor)(void *)) { struct kmem_cache *s = NULL; #ifdef CONFIG_DEBUG_VM if (!name || in_interrupt() || size < sizeof(void *) || size > KMALLOC_MAX_SIZE) { printk(KERN_ERR "kmem_cache_create(%s) integrity check" " failed\n", name); goto out; } #endif --- } Am I reading this right? Thanks, -- Shuah -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/