[PATCH 2/5] xen: Use init_tss array or per_cpu__init_tss

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Newer Xen versions (at least 4.2) use per_cpu__init_tss
instead of init_tss array. Take into account that.

Signed-off-by: Daniel Kiper <daniel.kiper at oracle.com>

diff -Npru crash-6.1.0.orig/x86.c crash-6.1.0/x86.c
--- crash-6.1.0.orig/x86.c	2012-11-13 14:45:58.000000000 +0100
+++ crash-6.1.0/x86.c	2012-11-13 14:48:13.000000000 +0100
@@ -5471,9 +5471,16 @@ x86_get_stackbase_hyper(ulong task)
 	if (!xen_hyper_test_pcpu_id(pcpu)) {
 		error(FATAL, "invalid pcpu number\n");
 	}
-	init_tss = symbol_value("init_tss");
+
+	if (symbol_exists("init_tss")) {
+		init_tss = symbol_value("init_tss");
+		init_tss += XEN_HYPER_SIZE(tss_struct) * pcpu;
+	} else {
+		init_tss = symbol_value("per_cpu__init_tss");
+		init_tss = xen_hyper_per_cpu(init_tss, pcpu);
+	}
+	
 	buf = GETBUF(XEN_HYPER_SIZE(tss_struct));
-	init_tss += XEN_HYPER_SIZE(tss_struct) * pcpu;
 	if (!readmem(init_tss, KVADDR, buf,
 			XEN_HYPER_SIZE(tss_struct), "init_tss", RETURN_ON_ERROR)) {
 		error(FATAL, "cannot read init_tss.\n");



[Index of Archives]     [LM Sensors]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux