[Crash-utility] [PATCH] CONFIG_SPARSEMEM for s390(x)

Michael Holzheu holzheu at linux.vnet.ibm.com
Tue Aug 12 15:12:23 UTC 2008


Hi Dave,

When starting crash on s390(x) with CONFIG_SPARSEMEM enabled we get the
following error message:

crash: CONFIG_SPARSEMEM kernels not supported for this architecture

The following patch fixes this problem, but I am not sure, if I set
_MAX_PHYSMEM_BITS to the correct value (I used 31 for s390 and 64 for
s390x). Could you please explain the meaning of _MAX_PHSYSMEM_BITS?
---

diff -Naurp crash-4.0-6.3/defs.h crash-4.0-6.3-config-sparse/defs.h
--- crash-4.0-6.3/defs.h	2008-04-29 19:39:17.000000000 +0200
+++ crash-4.0-6.3-config-sparse/defs.h	2008-08-12 17:03:54.000000000 +0200
@@ -2634,6 +2634,8 @@ struct efi_memory_desc_t {
 
 #define TIF_SIGPENDING (2)
 
+#define _MAX_PHYSMEM_BITS	31
+
 #endif  /* S390 */
 
 #ifdef S390X
@@ -2656,6 +2658,8 @@ struct efi_memory_desc_t {
 
 #define TIF_SIGPENDING (2)
 
+#define _MAX_PHYSMEM_BITS	64
+
 #endif  /* S390X */
 
 #ifdef PLATFORM
diff -Naurp crash-4.0-6.3/s390.c crash-4.0-6.3-config-sparse/s390.c
--- crash-4.0-6.3/s390.c	2008-04-29 19:39:17.000000000 +0200
+++ crash-4.0-6.3-config-sparse/s390.c	2008-08-12 17:04:03.000000000 +0200
@@ -130,6 +130,7 @@ s390_init(int when)
 		machdep->dump_irq = s390_dump_irq;
 		if (!machdep->hz)
 			machdep->hz = HZ;
+		machdep->max_physmem_bits = _MAX_PHYSMEM_BITS;
 		break;
 
 	case POST_INIT:
diff -Naurp crash-4.0-6.3/s390x.c crash-4.0-6.3-config-sparse/s390x.c
--- crash-4.0-6.3/s390x.c	2008-04-29 19:39:16.000000000 +0200
+++ crash-4.0-6.3-config-sparse/s390x.c	2008-08-12 17:04:01.000000000 +0200
@@ -128,6 +128,7 @@ s390x_init(int when)
 		machdep->dump_irq = s390x_dump_irq;
 		if (!machdep->hz)
 			machdep->hz = HZ;
+		machdep->max_physmem_bits = _MAX_PHYSMEM_BITS;
 		break;
 
 	case POST_INIT:






More information about the Crash-utility mailing list