summarylogtreecommitdiffstats
path: root/general-memory-marked-nomap.patch
diff options
context:
space:
mode:
Diffstat (limited to 'general-memory-marked-nomap.patch')
-rw-r--r--general-memory-marked-nomap.patch38
1 files changed, 38 insertions, 0 deletions
diff --git a/general-memory-marked-nomap.patch b/general-memory-marked-nomap.patch
new file mode 100644
index 000000000000..6f01098af3fb
--- /dev/null
+++ b/general-memory-marked-nomap.patch
@@ -0,0 +1,38 @@
+From 4d11a956070513a173dd9fd0d6e981918a6331e4 Mon Sep 17 00:00:00 2001
+From: Stefan Agner <stefan@agner.ch>
+Date: Wed, 15 Sep 2021 05:00:45 +0000
+Subject: [PATCH 11/90] HACK: of: partial revert of fdt.c changes
+
+This resolves reports similar to the below which are present in dmesg
+since Linux 5.10; which are also causing crashes in some distros:
+
+[ 0.000000] OF: fdt: Reserved memory: failed to reserve memory for node 'secmon@5000000': base 0x0000000005000000, size 3 MiB
+
+Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
+---
+ drivers/of/fdt.c | 9 ---------
+ 1 file changed, 9 deletions(-)
+
+diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
+index ec315b060cd5..15e9c0c2a2c6 100644
+--- a/drivers/of/fdt.c
++++ b/drivers/of/fdt.c
+@@ -481,15 +481,6 @@ static int __init early_init_dt_reserve_memory_arch(phys_addr_t base,
+ phys_addr_t size, bool nomap)
+ {
+ if (nomap) {
+- /*
+- * If the memory is already reserved (by another region), we
+- * should not allow it to be marked nomap, but don't worry
+- * if the region isn't memory as it won't be mapped.
+- */
+- if (memblock_overlaps_region(&memblock.memory, base, size) &&
+- memblock_is_region_reserved(base, size))
+- return -EBUSY;
+-
+ return memblock_mark_nomap(base, size);
+ }
+ return memblock_reserve(base, size);
+--
+2.35.1
+