From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jens Axboe Date: Sat, 12 Jul 2014 12:32:01 +0000 Subject: Re: [RFC Patch V1 01/30] mm, kernel: Use cpu_to_mem()/numa_mem_id() to support memoryless node Message-Id: <53C12AC1.4010002@kernel.dk> List-Id: References: <1405064267-11678-1-git-send-email-jiang.liu@linux.intel.com> <1405064267-11678-2-git-send-email-jiang.liu@linux.intel.com> In-Reply-To: <1405064267-11678-2-git-send-email-jiang.liu@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Jiang Liu , Andrew Morton , Mel Gorman , David Rientjes , Mike Galbraith , Peter Zijlstra , "Rafael J . Wysocki" , Dipankar Sarma , "Paul E. McKenney" , Balbir Singh , Thomas Gleixner , Frederic Weisbecker , Jan Kara , Ingo Molnar , Christoph Hellwig , "Srivatsa S. Bhat" , Roman Gushchin , Xie XiuQi Cc: Tony Luck , linux-mm@kvack.org, linux-hotplug@vger.kernel.org, linux-kernel@vger.kernel.org On 2014-07-11 09:37, Jiang Liu wrote: > When CONFIG_HAVE_MEMORYLESS_NODES is enabled, cpu_to_node()/numa_node_id() > may return a node without memory, and later cause system failure/panic > when calling kmalloc_node() and friends with returned node id. > So use cpu_to_mem()/numa_mem_id() instead to get the nearest node with > memory for the/current cpu. > > If CONFIG_HAVE_MEMORYLESS_NODES is disabled, cpu_to_mem()/numa_mem_id() > is the same as cpu_to_node()/numa_node_id(). I think blk-mq requires some of the same help, as do other places in the block layer. I'll take a look at that. As for you smp.c bits here: Acked-by: Jens Axboe -- Jens Axboe From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-we0-f172.google.com (mail-we0-f172.google.com [74.125.82.172]) by kanga.kvack.org (Postfix) with ESMTP id 8AD4C6B0035 for ; Sat, 12 Jul 2014 08:32:05 -0400 (EDT) Received: by mail-we0-f172.google.com with SMTP id x48so428943wes.3 for ; Sat, 12 Jul 2014 05:32:04 -0700 (PDT) Received: from mail-we0-f179.google.com (mail-we0-f179.google.com [74.125.82.179]) by mx.google.com with ESMTPS id cy7si9063723wjb.50.2014.07.12.05.32.04 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sat, 12 Jul 2014 05:32:04 -0700 (PDT) Received: by mail-we0-f179.google.com with SMTP id u57so6130wes.24 for ; Sat, 12 Jul 2014 05:32:04 -0700 (PDT) Message-ID: <53C12AC1.4010002@kernel.dk> Date: Sat, 12 Jul 2014 14:32:01 +0200 From: Jens Axboe MIME-Version: 1.0 Subject: Re: [RFC Patch V1 01/30] mm, kernel: Use cpu_to_mem()/numa_mem_id() to support memoryless node References: <1405064267-11678-1-git-send-email-jiang.liu@linux.intel.com> <1405064267-11678-2-git-send-email-jiang.liu@linux.intel.com> In-Reply-To: <1405064267-11678-2-git-send-email-jiang.liu@linux.intel.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-linux-mm@kvack.org List-ID: To: Jiang Liu , Andrew Morton , Mel Gorman , David Rientjes , Mike Galbraith , Peter Zijlstra , "Rafael J . Wysocki" , Dipankar Sarma , "Paul E. McKenney" , Balbir Singh , Thomas Gleixner , Frederic Weisbecker , Jan Kara , Ingo Molnar , Christoph Hellwig , "Srivatsa S. Bhat" , Roman Gushchin , Xie XiuQi Cc: Tony Luck , linux-mm@kvack.org, linux-hotplug@vger.kernel.org, linux-kernel@vger.kernel.org On 2014-07-11 09:37, Jiang Liu wrote: > When CONFIG_HAVE_MEMORYLESS_NODES is enabled, cpu_to_node()/numa_node_id() > may return a node without memory, and later cause system failure/panic > when calling kmalloc_node() and friends with returned node id. > So use cpu_to_mem()/numa_mem_id() instead to get the nearest node with > memory for the/current cpu. > > If CONFIG_HAVE_MEMORYLESS_NODES is disabled, cpu_to_mem()/numa_mem_id() > is the same as cpu_to_node()/numa_node_id(). I think blk-mq requires some of the same help, as do other places in the block layer. I'll take a look at that. As for you smp.c bits here: Acked-by: Jens Axboe -- Jens Axboe -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752690AbaGLMcK (ORCPT ); Sat, 12 Jul 2014 08:32:10 -0400 Received: from mail-wi0-f182.google.com ([209.85.212.182]:55839 "EHLO mail-wi0-f182.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752085AbaGLMcF (ORCPT ); Sat, 12 Jul 2014 08:32:05 -0400 Message-ID: <53C12AC1.4010002@kernel.dk> Date: Sat, 12 Jul 2014 14:32:01 +0200 From: Jens Axboe User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.6.0 MIME-Version: 1.0 To: Jiang Liu , Andrew Morton , Mel Gorman , David Rientjes , Mike Galbraith , Peter Zijlstra , "Rafael J . Wysocki" , Dipankar Sarma , "Paul E. McKenney" , Balbir Singh , Thomas Gleixner , Frederic Weisbecker , Jan Kara , Ingo Molnar , Christoph Hellwig , "Srivatsa S. Bhat" , Roman Gushchin , Xie XiuQi CC: Tony Luck , linux-mm@kvack.org, linux-hotplug@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [RFC Patch V1 01/30] mm, kernel: Use cpu_to_mem()/numa_mem_id() to support memoryless node References: <1405064267-11678-1-git-send-email-jiang.liu@linux.intel.com> <1405064267-11678-2-git-send-email-jiang.liu@linux.intel.com> In-Reply-To: <1405064267-11678-2-git-send-email-jiang.liu@linux.intel.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2014-07-11 09:37, Jiang Liu wrote: > When CONFIG_HAVE_MEMORYLESS_NODES is enabled, cpu_to_node()/numa_node_id() > may return a node without memory, and later cause system failure/panic > when calling kmalloc_node() and friends with returned node id. > So use cpu_to_mem()/numa_mem_id() instead to get the nearest node with > memory for the/current cpu. > > If CONFIG_HAVE_MEMORYLESS_NODES is disabled, cpu_to_mem()/numa_mem_id() > is the same as cpu_to_node()/numa_node_id(). I think blk-mq requires some of the same help, as do other places in the block layer. I'll take a look at that. As for you smp.c bits here: Acked-by: Jens Axboe -- Jens Axboe