projects/linux·commit 612b23f2

Merge tag 'memblock-v5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock

612b23f2 · Linus Torvalds <[email protected]> · 2021-09-02 12:26:31 -07:00

Pull memblock updates from Mike Rapoport:
 "Robustness and debug improvements:

   - add check for memory add/cap ordering

   - add missing debug code to memblock_add_node()"

* tag 'memblock-v5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock:
  memblock: Check memory add/cap ordering
  memblock: Add missing debug code to memblock_add_node()
Commit
612b23f27793ea1cf41621ca6dc552eb4699f41c
Parents
4a3bb420 · e888fa7b

Merge commit. Changes below are compared with the first parent: 4a3bb420.

Changes

1 files changed · +10 −0

FileStatusAddDelContent
mm/memblock.cmodified+10−0View file

mm/memblock.c

View file
diff --git a/mm/memblock.c b/mm/memblock.c
index de7b553..e2ca8dd 100644
--- a/mm/memblock.c
+++ b/mm/memblock.c
@@ -665,6 +665,11 @@ repeat:
int __init_memblock memblock_add_node(phys_addr_t base, phys_addr_t size,
int nid)
{
+ phys_addr_t end = base + size - 1;
+
+ memblock_dbg("%s: [%pa-%pa] nid=%d %pS\n", __func__,
+ &base, &end, nid, (void *)_RET_IP_);
+
return memblock_add_range(&memblock.memory, base, size, nid, 0);
}
@@ -1680,6 +1685,11 @@ void __init memblock_cap_memory_range(phys_addr_t base, phys_addr_t size)
if (!size)
return;
+ if (memblock.memory.cnt <= 1) {
+ pr_warn("%s: No memory registered yet\n", __func__);
+ return;
+ }
+
ret = memblock_isolate_range(&memblock.memory, base, size,
&start_rgn, &end_rgn);
if (ret)