Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965400AbcJXRKG (ORCPT ); Mon, 24 Oct 2016 13:10:06 -0400 Received: from mga04.intel.com ([192.55.52.120]:54113 "EHLO mga04.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965283AbcJXRKE (ORCPT ); Mon, 24 Oct 2016 13:10:04 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.31,542,1473145200"; d="scan'208";a="1049346120" Subject: Re: [RFC 2/8] mm: Add specialized fallback zonelist for coherent device memory nodes To: Anshuman Khandual , linux-kernel@vger.kernel.org, linux-mm@kvack.org References: <1477283517-2504-1-git-send-email-khandual@linux.vnet.ibm.com> <1477283517-2504-3-git-send-email-khandual@linux.vnet.ibm.com> Cc: mhocko@suse.com, js1304@gmail.com, vbabka@suse.cz, mgorman@suse.de, minchan@kernel.org, akpm@linux-foundation.org, aneesh.kumar@linux.vnet.ibm.com, bsingharora@gmail.com From: Dave Hansen Message-ID: <580E406B.4050205@intel.com> Date: Mon, 24 Oct 2016 10:10:03 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 MIME-Version: 1.0 In-Reply-To: <1477283517-2504-3-git-send-email-khandual@linux.vnet.ibm.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 806 Lines: 25 On 10/23/2016 09:31 PM, Anshuman Khandual wrote: > +#ifdef CONFIG_COHERENT_DEVICE > + /* > + * Isolation requiring coherent device memory node's zones > + * should not be part of any other node's fallback zonelist > + * but it's own fallback list. > + */ > + if (isolated_cdm_node(node) && (pgdat->node_id != node)) > + continue; > +#endif Total nit: Why do you need an #ifdef here when you had +#ifdef CONFIG_COHERENT_DEVICE +#define node_cdm(nid) (NODE_DATA(nid)->coherent_device) +#define set_cdm_isolation(nid) (node_cdm(nid) = 1) +#define clr_cdm_isolation(nid) (node_cdm(nid) = 0) +#define isolated_cdm_node(nid) (node_cdm(nid) == 1) +#else +#define set_cdm_isolation(nid) () +#define clr_cdm_isolation(nid) () +#define isolated_cdm_node(nid) (0) +#endif in your last patch?