From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756981Ab1KJCYK (ORCPT ); Wed, 9 Nov 2011 21:24:10 -0500 Received: from mga11.intel.com ([192.55.52.93]:52086 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753456Ab1KJCYJ (ORCPT ); Wed, 9 Nov 2011 21:24:09 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.69,486,1315206000"; d="scan'208";a="88323580" Subject: Re: [patch 1/5]thp: improve the error code path From: Shaohua Li To: Andrea Arcangeli Cc: Andrew Morton , linux-mm , lkml In-Reply-To: <20111110021853.GQ5075@redhat.com> References: <1319511521.22361.135.camel@sli10-conroe> <20111025114406.GC10182@redhat.com> <1319593680.22361.145.camel@sli10-conroe> <1320643049.22361.204.camel@sli10-conroe> <20111110021853.GQ5075@redhat.com> Content-Type: text/plain; charset="UTF-8" Date: Thu, 10 Nov 2011 10:33:15 +0800 Message-ID: <1320892395.22361.229.camel@sli10-conroe> Mime-Version: 1.0 X-Mailer: Evolution 2.32.2 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 2011-11-10 at 10:18 +0800, Andrea Arcangeli wrote: > Hi Shaohua, > > On Mon, Nov 07, 2011 at 01:17:29PM +0800, Shaohua Li wrote: > > On Wed, 2011-10-26 at 09:48 +0800, Shaohua Li wrote: > > > On Tue, 2011-10-25 at 19:44 +0800, Andrea Arcangeli wrote: > > > > Hello, > > > > > > > > On Tue, Oct 25, 2011 at 10:58:41AM +0800, Shaohua Li wrote: > > > > > +#ifdef CONFIG_SYSFS > > > > > + sysfs_remove_group(hugepage_kobj, &khugepaged_attr_group); > > > > > +remove_hp_group: > > > > > + sysfs_remove_group(hugepage_kobj, &hugepage_attr_group); > > > > > +delete_obj: > > > > > + kobject_put(hugepage_kobj); > > > > > out: > > > > > +#endif > > > > > > > > Adding an ifdef is making the code worse, the whole point of having > > > > these functions become noops at build time is to avoid having to add > > > > ifdefs in the callers. > > > yes, but hugepage_attr_group is defined in CONFIG_SYSFS. And the > > > functions are inline functions. They really should be a '#define xxx'. > > hugepage_attr_group is defined even if CONFIG_SYSFS is not set and I > just made a build with CONFIG_SYSFS=n and it builds just fine without > any change. > $ grep CONFIG_SYSFS .config > # CONFIG_SYSFS is not set > > So we can drop 1/5 above. this isn't the case in the code. And the code uses hugepage_attr_group is already within CONFIG_SYSFS, so your build success.