[Crash-utility] Re: [Xen-devel] crash can't analyze memory dumpfile of Xen

Itsuro ODA oda at valinux.co.jp
Fri Oct 3 06:02:31 UTC 2008


Hi,

I found the root cause of this problem is that the value of "PERCPU_SHIFT"
was changed to 13 from 12.

The quick workaround is to apply the following patch to the crash command:
----------------------------------------------------------------------
--- xen_hyper_defs.h.org        2008-10-03 14:46:28.000000000 +0900
+++ xen_hyper_defs.h    2008-10-03 14:46:50.000000000 +0900
@@ -134,7 +134,7 @@
 #endif

 #if defined(X86) || defined(X86_64)
-#define XEN_HYPER_PERCPU_SHIFT 12
+#define XEN_HYPER_PERCPU_SHIFT 13
 #define xen_hyper_per_cpu(var, cpu)  \
        ((ulong)(var) + (((ulong)(cpu))<<XEN_HYPER_PERCPU_SHIFT))
 #elif defined(IA64)
------------------------------------------------------------------------

I need to think the backword compatibility. I wonder how to determine
the value of "PERCPU_SHIFT". The change of "PERCPU_SHIFT" was made at
a certain point of xen-unstable before xen-3.3 release. The xen version
number (3.3) can't use as key... I will consider more...

Thanks.
Itsuro Oda

On Fri, 05 Sep 2008 13:42:46 +0900
Itsuro ODA <oda at valinux.co.jp> wrote:

> Hi,
> 
> I recieved the dump file via FTP from Yuji and I can reproduced
> the problem.
> 
> Hmm, it seems the format of the crash note section is not expected.
> (and there is another problem; "jiffies" is lost.)
> I will check more deeply.
> 
> Until the problem is fixed, try the following quick hack.
> ------------------------------------------------------------------
> --- xen_hyper.c.org	2008-09-05 12:48:57.000000000 +0900
> +++ xen_hyper.c	2008-09-05 13:32:28.000000000 +0900
> @@ -150,7 +150,7 @@
>  	 * Do some initialization.
>  	 */
>  #ifndef IA64
> -	xen_hyper_dumpinfo_init();
> +//	xen_hyper_dumpinfo_init(); /* XXX: should be fixed !! */
>  #endif
>  	xhmachdep->pcpu_init();
>  	xen_hyper_domain_init();
> @@ -1746,9 +1746,11 @@
>  			tmp2 = (ulong)jiffies_64;
>  			jiffies_64 = (ulonglong)(tmp2 - tmp1);
>  		}
> -	} else {
> +	} else if (symbol_exists("jiffies")) {
>  		get_symbol_data("jiffies", sizeof(long), &jiffies);
>  		jiffies_64 = (ulonglong)jiffies;
> +	} else {
> +		jiffies_64 = 0; /* XXX: find alternative !! */
>  	}
>  
>  	return jiffies_64;
> ------------------------------------------------------------------
> (the "dumpinfo" sub command cannot be used.)
> 
> Thanks.
> Itsuro Oda
> 
> On Thu, 04 Sep 2008 16:29:51 +0900
> Yuji Shimada <shimada-yxb at necst.nec.co.jp> wrote:
> 
> > Hi ODA-san,
> > 
> > Thank you so much for your reply.
> > 
> > > What arch did you use ?
> > 
> > I used x86_64 arch.
> > 
> > > If you send me xen-syms-3.3-unstable and dumpfile.core
> > > I will investigate more.
> > 
> > Please find "xen-syms-3.3-unstable", attached with the mail.
> > If you need "dumpfile.core" to investigate this issue, please let me know.
> > 
> > In such case, I think I should send you "dumpfile.core" stored on
> > the disk by post, or upload it to your site. Because it is a huge size.
> > 
> > Thanks,
> > 
> > --
> > Yuji Shimada
> 
> -- 
> Itsuro ODA <oda at valinux.co.jp>
> 
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel at lists.xensource.com
> http://lists.xensource.com/xen-devel

-- 
Itsuro ODA <oda at valinux.co.jp>




More information about the Crash-utility mailing list