The patch titled
     Subject: bootmem: make ___alloc_bootmem_node_nopanic() really nopanic
has been removed from the -mm tree.  Its filename was
     bootmem-make-___alloc_bootmem_node_nopanic-to-be-real-nopanic.patch

This patch was dropped because it was merged into mainline or a subsystem tree

------------------------------------------------------
From: Yinghai Lu <ying...@kernel.org>
Subject: bootmem: make ___alloc_bootmem_node_nopanic() really nopanic

after
| From 99ab7b19440a72ebdf225f99b20f8ef40decee86 Mon Sep 17 00:00:00 2001
| Date: Wed, 11 Jul 2012 14:02:53 -0700
| Subject: [PATCH] mm: sparse: fix usemap allocation above node descriptor
 section

Johannes said:
| while backporting the below patch, I realised that your fix busted
| f5bf18fa22f8 again.  The problem was not a panicking version on
| allocation failure but when the usemap size was too large such that
| goal + size > limit triggers the BUG_ON in the bootmem allocator.  So
| we need a version that passes limit ONLY if the usemap is smaller than
| the section.

after checking the code, the name of ___alloc_bootmem_node_nopanic() does
not reflect the fact.

Make bootmem really not panic.

Hope will kill bootmem sooner.

Signed-off-by: Yinghai Lu <ying...@kernel.org>
Cc: Johannes Weiner <han...@cmpxchg.org>
Cc: <stable@vger.kernel.org>    [3.3.x, 3.4.x]
Signed-off-by: Andrew Morton <a...@linux-foundation.org>
---

 mm/bootmem.c |    4 ++++
 1 file changed, 4 insertions(+)

diff -puN 
mm/bootmem.c~bootmem-make-___alloc_bootmem_node_nopanic-to-be-real-nopanic 
mm/bootmem.c
--- a/mm/bootmem.c~bootmem-make-___alloc_bootmem_node_nopanic-to-be-real-nopanic
+++ a/mm/bootmem.c
@@ -710,6 +710,10 @@ again:
        if (ptr)
                return ptr;
 
+       /* do not panic in alloc_bootmem_bdata() */
+       if (limit && goal + size > limit)
+               limit = 0;
+
        ptr = alloc_bootmem_bdata(pgdat->bdata, size, align, goal, limit);
        if (ptr)
                return ptr;
_

Patches currently in -mm which might be from ying...@kernel.org are

origin.patch
linux-next.patch
mm-memblockc-memblock_double_array-cosmetic-cleanups.patch
mm-setup-pageblock_order-before-its-used-by-sparsemem.patch
mm-hotplug-correctly-setup-fallback-zonelists-when-creating-new-pgdat.patch
mm-hotplug-correctly-add-new-zone-to-all-other-nodes-zone-lists.patch
mm-hotplug-free-zone-pageset-when-a-zone-becomes-empty.patch
mm-hotplug-mark-memory-hotplug-code-in-page_allocc-as-__meminit.patch

--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to