From: Christopher Lameter <cl@linux.com> To: Michal Hocko <mhocko@kernel.org> Cc: Sachin Sant <sachinp@linux.vnet.ibm.com>, Pekka Enberg <penberg@kernel.org>, David Rientjes <rientjes@google.com>, Joonsoo Kim <iamjoonsoo.kim@lge.com>, Kirill Tkhai <ktkhai@virtuozzo.com>, Linux-Next Mailing List <linux-next@vger.kernel.org>, linuxppc-dev@lists.ozlabs.org Subject: Re: [5.6.0-rc2-next-20200218/powerpc] Boot failure on POWER9 Date: Wed, 26 Feb 2020 18:25:28 +0000 (UTC) [thread overview] Message-ID: <alpine.DEB.2.21.2002261823270.8012@www.lameter.com> (raw) In-Reply-To: <20200224085812.GB22443@dhcp22.suse.cz> On Mon, 24 Feb 2020, Michal Hocko wrote: > Hmm, nasty. Is there any reason why kmalloc_node behaves differently > from the page allocator? The page allocator will do the same thing if you pass GFP_THISNODE and insist on allocating memory from a node that does not exist. > > > A short summary. kmalloc_node blows up when trying to allocate from a > > > memory less node. > > > > Use kmalloc instead? And set a memory allocation policy? > > The current code (memcg_expand_one_shrinker_map resp. memcg_alloc_shrinker_maps) > already use kvmalloc. Kirill's patch wanted to make those data structure > on the respective node and kvmalloc_node sounded like the right thing to > do. It comes as a surprise that the kernel simply blows up on a memory > less node rather than falling back to a close node gracefully. I suspect > this already happens when the target node is out of memory, right? No. If the target node is out of memory then direct reclaim is going to be invovked. > How would a memory allocation policy help in this case btw.? It would allow fallback to other nodes.
WARNING: multiple messages have this Message-ID (diff)
From: Christopher Lameter <cl@linux.com> To: Michal Hocko <mhocko@kernel.org> Cc: Sachin Sant <sachinp@linux.vnet.ibm.com>, Pekka Enberg <penberg@kernel.org>, Kirill Tkhai <ktkhai@virtuozzo.com>, Linux-Next Mailing List <linux-next@vger.kernel.org>, David Rientjes <rientjes@google.com>, Joonsoo Kim <iamjoonsoo.kim@lge.com>, linuxppc-dev@lists.ozlabs.org Subject: Re: [5.6.0-rc2-next-20200218/powerpc] Boot failure on POWER9 Date: Wed, 26 Feb 2020 18:25:28 +0000 (UTC) [thread overview] Message-ID: <alpine.DEB.2.21.2002261823270.8012@www.lameter.com> (raw) In-Reply-To: <20200224085812.GB22443@dhcp22.suse.cz> On Mon, 24 Feb 2020, Michal Hocko wrote: > Hmm, nasty. Is there any reason why kmalloc_node behaves differently > from the page allocator? The page allocator will do the same thing if you pass GFP_THISNODE and insist on allocating memory from a node that does not exist. > > > A short summary. kmalloc_node blows up when trying to allocate from a > > > memory less node. > > > > Use kmalloc instead? And set a memory allocation policy? > > The current code (memcg_expand_one_shrinker_map resp. memcg_alloc_shrinker_maps) > already use kvmalloc. Kirill's patch wanted to make those data structure > on the respective node and kvmalloc_node sounded like the right thing to > do. It comes as a surprise that the kernel simply blows up on a memory > less node rather than falling back to a close node gracefully. I suspect > this already happens when the target node is out of memory, right? No. If the target node is out of memory then direct reclaim is going to be invovked. > How would a memory allocation policy help in this case btw.? It would allow fallback to other nodes.
next prev parent reply other threads:[~2020-02-26 18:25 UTC|newest] Thread overview: 92+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-02-18 10:45 [5.6.0-rc2-next-20200218/powerpc] Boot failure on POWER9 Sachin Sant 2020-02-18 10:50 ` Kirill Tkhai 2020-02-18 10:50 ` Kirill Tkhai 2020-02-18 11:01 ` Kirill Tkhai 2020-02-18 11:01 ` Kirill Tkhai 2020-02-18 11:35 ` Kirill Tkhai 2020-02-18 11:35 ` Kirill Tkhai 2020-02-18 11:40 ` Sachin Sant 2020-02-18 11:55 ` Michal Hocko 2020-02-18 11:55 ` Michal Hocko 2020-02-18 14:00 ` Sachin Sant 2020-02-18 14:00 ` Sachin Sant 2020-02-18 14:26 ` Michal Hocko 2020-02-18 14:26 ` Michal Hocko 2020-02-18 15:11 ` Sachin Sant 2020-02-18 15:11 ` Sachin Sant 2020-02-18 15:24 ` Michal Hocko 2020-02-18 15:24 ` Michal Hocko 2020-02-22 3:38 ` Christopher Lameter 2020-02-22 3:38 ` Christopher Lameter 2020-02-24 8:58 ` Michal Hocko 2020-02-24 8:58 ` Michal Hocko 2020-02-26 18:25 ` Christopher Lameter [this message] 2020-02-26 18:25 ` Christopher Lameter 2020-02-26 18:41 ` Michal Hocko 2020-02-26 18:41 ` Michal Hocko 2020-02-26 18:44 ` Christopher Lameter 2020-02-26 18:44 ` Christopher Lameter 2020-02-26 19:01 ` Michal Hocko 2020-02-26 19:01 ` Michal Hocko 2020-02-26 20:31 ` David Rientjes 2020-02-26 20:31 ` David Rientjes 2020-02-26 20:52 ` Michal Hocko 2020-02-26 20:52 ` Michal Hocko 2020-02-26 21:45 ` Vlastimil Babka 2020-02-26 21:45 ` Vlastimil Babka 2020-02-26 22:29 ` Vlastimil Babka 2020-02-26 22:29 ` Vlastimil Babka 2020-02-27 12:12 ` Michal Hocko 2020-02-27 12:12 ` Michal Hocko 2020-02-27 16:00 ` Sachin Sant 2020-02-27 16:00 ` Sachin Sant 2020-02-27 16:16 ` Vlastimil Babka 2020-02-27 18:26 ` Michal Hocko 2020-02-27 18:26 ` Michal Hocko 2020-03-10 15:01 ` Michal Hocko 2020-03-10 15:01 ` Michal Hocko 2020-03-12 12:18 ` Michael Ellerman 2020-03-12 12:18 ` Michael Ellerman 2020-03-12 16:51 ` Sachin Sant 2020-03-12 16:51 ` Sachin Sant 2020-03-13 10:48 ` Michael Ellerman 2020-03-13 10:48 ` Michael Ellerman 2020-03-13 11:12 ` Srikar Dronamraju 2020-03-13 11:12 ` Srikar Dronamraju 2020-03-13 11:35 ` Vlastimil Babka 2020-03-13 11:35 ` Vlastimil Babka 2020-03-14 8:10 ` Sachin Sant 2020-02-27 12:02 ` Michal Hocko 2020-02-27 12:02 ` Michal Hocko 2020-02-18 11:38 ` Sachin Sant 2020-02-18 11:53 ` Kirill Tkhai 2020-03-17 13:17 ` [PATCH 0/4] Fix kmalloc_node on offline nodes Srikar Dronamraju 2020-03-17 13:17 ` Srikar Dronamraju 2020-03-17 13:17 ` [PATCH 1/4] mm: Check for node_online in node_present_pages Srikar Dronamraju 2020-03-17 13:17 ` Srikar Dronamraju 2020-03-17 13:37 ` Srikar Dronamraju 2020-03-17 13:37 ` Srikar Dronamraju 2020-03-17 13:17 ` [PATCH 2/4] mm/slub: Use mem_node to allocate a new slab Srikar Dronamraju 2020-03-17 13:17 ` Srikar Dronamraju 2020-03-17 13:34 ` Vlastimil Babka 2020-03-17 13:34 ` Vlastimil Babka 2020-03-17 13:45 ` Srikar Dronamraju 2020-03-17 13:45 ` Srikar Dronamraju 2020-03-17 13:53 ` Vlastimil Babka 2020-03-17 13:53 ` Vlastimil Babka 2020-03-17 14:51 ` Srikar Dronamraju 2020-03-17 14:51 ` Srikar Dronamraju 2020-03-17 15:29 ` Vlastimil Babka 2020-03-17 15:29 ` Vlastimil Babka 2020-03-18 7:29 ` Srikar Dronamraju 2020-03-18 7:29 ` Srikar Dronamraju 2020-03-17 16:41 ` Srikar Dronamraju 2020-03-17 16:41 ` Srikar Dronamraju 2020-03-17 13:17 ` [PATCH 3/4] mm: Implement reset_numa_mem Srikar Dronamraju 2020-03-17 13:17 ` Srikar Dronamraju 2020-03-17 13:17 ` [PATCH 4/4] powerpc/numa: Set fallback nodes for offline nodes Srikar Dronamraju 2020-03-17 13:17 ` Srikar Dronamraju 2020-03-17 14:22 ` Bharata B Rao 2020-03-17 14:22 ` Bharata B Rao 2020-03-17 14:29 ` Srikar Dronamraju 2020-03-17 14:29 ` Srikar Dronamraju
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=alpine.DEB.2.21.2002261823270.8012@www.lameter.com \ --to=cl@linux.com \ --cc=iamjoonsoo.kim@lge.com \ --cc=ktkhai@virtuozzo.com \ --cc=linux-next@vger.kernel.org \ --cc=linuxppc-dev@lists.ozlabs.org \ --cc=mhocko@kernel.org \ --cc=penberg@kernel.org \ --cc=rientjes@google.com \ --cc=sachinp@linux.vnet.ibm.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.