Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755512Ab2HOXx1 (ORCPT ); Wed, 15 Aug 2012 19:53:27 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:36016 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753008Ab2HOXxZ (ORCPT ); Wed, 15 Aug 2012 19:53:25 -0400 Date: Wed, 15 Aug 2012 16:53:24 -0700 From: Andrew Morton To: shuah.khan@hp.com Cc: "Christoph Lameter (Open Source)" , penberg@kernel.org, glommer@parallels.com, js1304@gmail.com, David Rientjes , linux-mm@kvack.org, LKML , Linus Torvalds , shuahkhan@gmail.com Subject: Re: [PATCH v3] mm: Restructure kmem_cache_create() to move debug cache integrity checks into a new function Message-Id: <20120815165324.f6e16eee.akpm@linux-foundation.org> In-Reply-To: <1344789618.5128.5.camel@lorien2> References: <1342221125.17464.8.camel@lorien2> <1344224494.3053.5.camel@lorien2> <1344266096.2486.17.camel@lorien2> <1344272614.2486.40.camel@lorien2> <1344287631.2486.57.camel@lorien2> <1344531695.2393.27.camel@lorien2> <1344540801.2393.42.camel@lorien2> <1344789618.5128.5.camel@lorien2> X-Mailer: Sylpheed 3.0.2 (GTK+ 2.20.1; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1552 Lines: 42 On Sun, 12 Aug 2012 10:40:18 -0600 Shuah Khan wrote: > kmem_cache_create() does cache integrity checks when CONFIG_DEBUG_VM > is defined. These checks interspersed with the regular code path has > lead to compile time warnings when compiled without CONFIG_DEBUG_VM > defined. Restructuring the code to move the integrity checks in to a new > function would eliminate the current compile warning problem and also > will allow for future changes to the debug only code to evolve without > introducing new warnings in the regular path. This restructuring work > is based on the discussion in the following thread: Your patch appears to be against some ancient old kernel, such as 3.5. I did this: --- a/mm/slab_common.c~mm-slab_commonc-restructure-kmem_cache_create-to-move-debug-cache-integrity-checks-into-a-new-function-fix +++ a/mm/slab_common.c @@ -101,15 +101,8 @@ struct kmem_cache *kmem_cache_create(con get_online_cpus(); mutex_lock(&slab_mutex); - - if (kmem_cache_sanity_check(name, size)) - goto oops; - - s = __kmem_cache_create(name, size, align, flags, ctor); - -#ifdef CONFIG_DEBUG_VM -oops: -#endif + if (kmem_cache_sanity_check(name, size) == 0) + s = __kmem_cache_create(name, size, align, flags, ctor); mutex_unlock(&slab_mutex); put_online_cpus(); _ -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/