[PATCH 2/6] kexec: don't die during buffer finding

Yinghai Lu yinghai at kernel.org
Sun Nov 18 22:02:27 EST 2012


could return 0, and let the caller retry with new ranges.

Signed-off-by: Yinghai Lu <yinghai at kernel.org>
---
 kexec/kexec.c |    7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/kexec/kexec.c b/kexec/kexec.c
index 8928be0..0f8aec8 100644
--- a/kexec/kexec.c
+++ b/kexec/kexec.c
@@ -366,10 +366,9 @@ unsigned long add_buffer_phys_virt(struct kexec_info *info,
 	memsz = (memsz + (pagesize - 1)) & ~(pagesize - 1);
 
 	base = locate_hole(info, memsz, buf_align, buf_min, buf_max, buf_end);
-	if (base == ULONG_MAX) {
-		die("locate_hole failed\n");
-	}
-	
+	if (base == ULONG_MAX)
+		return 0;
+
 	add_segment_phys_virt(info, buf, bufsz, base, memsz, phys);
 	return base;
 }
-- 
1.7.7




More information about the kexec mailing list