Kexec/Kdump: honour non-zero crashkernel offset.

Horms
2006-09-20T02:43:01Z

Index: linux-2.6/arch/ia64/kernel/setup.c
=================================--- linux-2.6.orig/arch/ia64/kernel/setup.c 2006-09-20 10:56:28.000000000 +0900
+++ linux-2.6/arch/ia64/kernel/setup.c 2006-09-20 10:58:06.000000000 +0900
@@ -257,7 +257,7 @@

#ifdef CONFIG_KEXEC
/* crashkernel=size@offset specifies the size to reserve for a crash
- * kernel.(offset is ingored for keep compatibility with other archs)
+ * kernel. If offset is 0, then it is determined automatically.
* By reserving this memory we guarantee that linux
* never set's it up as a DMA target.
* Useful for holding code to do something appropriate
@@ -268,7 +268,7 @@
unsigned long base, size;
if (from) {
size = memparse(from + 12, &from);
- if (size) {
+ if (size && !base) {
sort_regions(rsvd_region, n);
base = kdump_find_rsvd_region(size,
rsvd_region, n);