lkml.org 
[lkml]   [2009]   [Aug]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[Patch 4/8] ia64: implement crashkernel=auto

Since in patch 2/8 we already implement the generic part, this will
add the rest part for ia64.

Signed-off-by: WANG Cong <amwang@redhat.com>

---

Index: linux-2.6/arch/ia64/include/asm/kexec.h
===================================================================
--- linux-2.6.orig/arch/ia64/include/asm/kexec.h
+++ linux-2.6/arch/ia64/include/asm/kexec.h
@@ -19,6 +19,29 @@
flush_icache_range(page_addr, page_addr + PAGE_SIZE); \
} while(0)

+#ifdef CONFIG_KEXEC_AUTO_RESERVE
+#define ARCH_HAS_DEFAULT_CRASH_SIZE
+static inline
+unsigned long long arch_default_crash_size(unsigned long long total_size)
+{
+ if (total_size >= 4ULL<<30 && total_size < 12ULL<<30)
+ return 1ULL<<28;
+ else if (total_size >= 12ULL<<30 && total_size < 128ULL<<30)
+ return 1ULL<<29;
+ else if (total_size >= 128ULL<<30 && total_size < 256ULL<<30)
+ return 3ULL<<28;
+ else if (total_size >= 256ULL<<30 && total_size < 378ULL<<30)
+ return 1ULL<<30;
+ else if (total_size >= 318ULL<<30 && total_size < 512ULL<<30)
+ return 3ULL<<29;
+ else if (total_size >= 512ULL<<30 && total_size < 768ULL<<30)
+ return 2ULL<<30;
+ else if (total_size >= 768ULL<<30)
+ return 3ULL<<30;
+}
+#include <asm-generic/kexec.h>
+#endif
+
extern struct kimage *ia64_kimage;
extern const unsigned int relocate_new_kernel_size;
extern void relocate_new_kernel(unsigned long, unsigned long,

\
 
 \ /
  Last update: 2009-08-12 10:21    [W:0.110 / U:1.764 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site