From: David Rientjes <rientjes@google.com>
To: Pekka Enberg <penberg@kernel.org>
Cc: Sasha Levin <sasha.levin@oracle.com>,
Andrew Morton <akpm@linux-foundation.org>,
Johannes Weiner <hannes@cmpxchg.org>,
"David S. Miller" <davem@davemloft.net>,
Tejun Heo <tj@kernel.org>, Joonsoo Kim <js1304@gmail.com>,
Yinghai Lu <yinghai@kernel.org>,
linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/3] mm, bootmem: panic in bootmem alloc functions even if slab is available
Date: Thu, 27 Dec 2012 14:31:10 -0800 (PST) [thread overview]
Message-ID: <alpine.DEB.2.00.1212271428520.18214@chino.kir.corp.google.com> (raw)
In-Reply-To: <CAOJsxLH4RzWdxdVXyn+eFc56JfJtije2jK1eWaBYVaoZSHuUBA@mail.gmail.com>
On Fri, 28 Dec 2012, Pekka Enberg wrote:
> On Sun, 23 Dec 2012, Sasha Levin wrote:
> >> diff --git a/mm/bootmem.c b/mm/bootmem.c
> >> index 1324cd7..198a92f 100644
> >> --- a/mm/bootmem.c
> >> +++ b/mm/bootmem.c
> >> @@ -763,9 +763,6 @@ void * __init ___alloc_bootmem_node(pg_data_t *pgdat, unsigned long size,
> >> void * __init __alloc_bootmem_node(pg_data_t *pgdat, unsigned long size,
> >> unsigned long align, unsigned long goal)
> >> {
> >> - if (WARN_ON_ONCE(slab_is_available()))
> >> - return kzalloc_node(size, GFP_NOWAIT, pgdat->node_id);
> >> -
> >> return ___alloc_bootmem_node(pgdat, size, align, goal, 0);
> >> }
>
> I'm not sure what Sasha's patch is trying to do here but the fall-back
> is there simply to let the caller know it's calling the bootmem
> allocator *too late*. That is, the slab allocator is already up and
> running so you're expected to use that.
>
The __alloc_bootmem_node() variant is intended to panic rather than return
NULL so there are callers that do not check the return value. I'm
suggesting rather than removing the fallback to the slab allocator to
check the return value and panic() here if kzalloc_node() returns NULL.
The __alloc_bootmem_node_nopanic() variant needs not be changed.
--
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: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2012-12-27 22:31 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-12-23 20:15 [PATCH 1/3] mm, sparse: allocate bootmem without panicing in sparse_mem_maps_populate_node Sasha Levin
2012-12-23 20:15 ` [PATCH 2/3] mm, bootmem: panic in bootmem alloc functions even if slab is available Sasha Levin
2012-12-27 22:25 ` David Rientjes
2012-12-27 22:27 ` Pekka Enberg
2012-12-27 22:31 ` David Rientjes [this message]
2012-12-27 22:38 ` Pekka Enberg
2012-12-27 22:40 ` Sasha Levin
2012-12-27 23:04 ` David Rientjes
2012-12-27 23:07 ` Sasha Levin
2012-12-28 14:42 ` JoonSoo Kim
2012-12-28 19:16 ` Yinghai Lu
2012-12-23 20:15 ` [PATCH 3/3] mm, sparse: don't check return value of alloc_bootmem calls Sasha Levin
2012-12-27 22:28 ` David Rientjes
2012-12-27 22:23 ` [PATCH 1/3] mm, sparse: allocate bootmem without panicing in sparse_mem_maps_populate_node David Rientjes
2012-12-27 22:41 ` Sasha Levin
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.00.1212271428520.18214@chino.kir.corp.google.com \
--to=rientjes@google.com \
--cc=akpm@linux-foundation.org \
--cc=davem@davemloft.net \
--cc=hannes@cmpxchg.org \
--cc=js1304@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=penberg@kernel.org \
--cc=sasha.levin@oracle.com \
--cc=tj@kernel.org \
--cc=yinghai@kernel.org \
/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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox