From patchwork Mon Aug 17 03:19:01 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jiang Liu X-Patchwork-Id: 507746 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id ECE0F14029C for ; Mon, 17 Aug 2015 13:18:37 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751540AbbHQDQX (ORCPT ); Sun, 16 Aug 2015 23:16:23 -0400 Received: from mga09.intel.com ([134.134.136.24]:11175 "EHLO mga09.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751403AbbHQDQL (ORCPT ); Sun, 16 Aug 2015 23:16:11 -0400 Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga102.jf.intel.com with ESMTP; 16 Aug 2015 20:16:10 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.15,692,1432623600"; d="scan'208";a="543143424" Received: from gerry-dev.bj.intel.com ([10.238.158.61]) by FMSMGA003.fm.intel.com with ESMTP; 16 Aug 2015 20:16:06 -0700 From: Jiang Liu To: Andrew Morton , Mel Gorman , David Rientjes , Mike Galbraith , Peter Zijlstra , "Rafael J . Wysocki" , Tang Chen , Tejun Heo , Pravin Shelar , "David S. Miller" Cc: Jiang Liu , Tony Luck , linux-mm@kvack.org, linux-hotplug@vger.kernel.org, linux-kernel@vger.kernel.org, x86@kernel.org, netdev@vger.kernel.org, dev@openvswitch.org Subject: [Patch V3 4/9] openvswitch: Replace cpu_to_node() with cpu_to_mem() to support memoryless node Date: Mon, 17 Aug 2015 11:19:01 +0800 Message-Id: <1439781546-7217-5-git-send-email-jiang.liu@linux.intel.com> X-Mailer: git-send-email 1.7.10.4 In-Reply-To: <1439781546-7217-1-git-send-email-jiang.liu@linux.intel.com> References: <1439781546-7217-1-git-send-email-jiang.liu@linux.intel.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Function ovs_flow_stats_update() allocates memory with __GFP_THISNODE flag set, which may cause permanent memory allocation failure on memoryless node. So replace cpu_to_node() with cpu_to_mem() to better support memoryless node. For node with memory, cpu_to_mem() is the same as cpu_to_node(). This change only affects performance and shouldn't affect functionality. Signed-off-by: Jiang Liu Acked-by: Pravin B Shelar --- net/openvswitch/flow.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/openvswitch/flow.c b/net/openvswitch/flow.c index bc7b0aba994a..e50a5681d0c2 100644 --- a/net/openvswitch/flow.c +++ b/net/openvswitch/flow.c @@ -69,7 +69,7 @@ void ovs_flow_stats_update(struct sw_flow *flow, __be16 tcp_flags, const struct sk_buff *skb) { struct flow_stats *stats; - int node = numa_node_id(); + int node = numa_mem_id(); int len = skb->len + (skb_vlan_tag_present(skb) ? VLAN_HLEN : 0); stats = rcu_dereference(flow->stats[node]);