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 <jiang.liu@xxxxxxxxxxxxxxx> --- 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]); -- 1.7.10.4 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>