[PATCH 2/2] arm64/kdump: add code comments for crashkernel reservation cases

Baoquan He bhe at redhat.com
Mon Jan 16 19:49:21 PST 2023


This will help understand codes on crashkernel reservations on arm64.

Signed-off-by: Baoquan He <bhe at redhat.com>
---
 arch/arm64/mm/init.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/arch/arm64/mm/init.c b/arch/arm64/mm/init.c
index 26a05af2bfa8..f88ad17cb20d 100644
--- a/arch/arm64/mm/init.c
+++ b/arch/arm64/mm/init.c
@@ -177,6 +177,10 @@ static void __init reserve_crashkernel(void)
 	crash_base = memblock_phys_alloc_range(crash_size, CRASH_ALIGN,
 					       search_base, crash_max);
 	if (!crash_base) {
+		/*
+		 * For crashkernel=size[KMG]@offset[KMG], print out failure
+		 * message if can't reserve the specified region.
+		 */
 		if (fixed_base) {
 			pr_warn("cannot reserve crashkernel region [0x%llx-0x%llx]\n",
 				search_base, crash_max);
@@ -188,6 +192,11 @@ static void __init reserve_crashkernel(void)
 		 * high memory, the minimum required low memory will be
 		 * reserved later.
 		 */
+		/*
+		 * For crashkernel=size[KMG], if the first attempt was for
+		 * low memory, fall back to high memory, the minimum required
+		 * low memory will be reserved later.
+		 */
 		if (!high && crash_max == CRASH_ADDR_LOW_MAX) {
 			crash_max = CRASH_ADDR_HIGH_MAX;
 			search_base = CRASH_ADDR_LOW_MAX;
@@ -195,6 +204,10 @@ static void __init reserve_crashkernel(void)
 			goto retry;
 		}
 
+		/*
+		 * For crashkernel=size[KMG],high, if the first attempt was for
+		 * high memory, fall back to low memory.
+		 */
 		if (high && (crash_max == CRASH_ADDR_HIGH_MAX)) {
 			crash_max = CRASH_ADDR_LOW_MAX;
 			search_base = 0;
-- 
2.34.1




More information about the kexec mailing list