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

Re: [Xen-ia64-devel] does xen support MCA now?



Hi Anthony,

> Sorry, I didn't see xen_mca handler purge and reload TLB in latest
> changeset.
> The code is commented out. Maybe I miss something, could you elaborate
> it?

TLB purge and reload code is in xen/arch/ia64/linux-xen/mca_asm.S

   367          // The following code purges TC and TR entries. Then reload all 
TC entries.
   368          // Purge percpu data TC entries.
   369  begin_tlb_purge_and_reload:
   370          movl r18=ia64_reload_tr;;
   371          LOAD_PHYSICAL(p0,r18,ia64_reload_tr);;
   372          mov b1=r18;;
   373          br.sptk.many ia64_do_tlb_purge;;
   374  

> My understanding is, corrected platform MCA is CPE, and this MCA should
> have been corrected by firmware ( PAL or SAL), CPE interrupt is just
> used to inform OS something has happened.
> Uncorrected platform MCA still invoke OS_MCA, it still rendezvous other
> processors.

TLB-related uncorrected MCA is recoverd in xen_mca handler.
But when the other uncorrected MCA happens, it just causes system
reset. The other error recoveries are not implemented yet.

Thanks,
KAZ


From: "Xu, Anthony" <anthony.xu@xxxxxxxxx>
Subject: RE: [Xen-ia64-devel] does xen support MCA now?
Date: Fri, 21 Sep 2007 09:01:08 +0800

> >> 1. If this is a TLB-related MCA, when xen_mca handler returns to
> guest,
> >> this MCA may happen again.
> >
> >When a TLB-relate MCA is occured, xen_mca handler tries to purge and
> >reload TLB. In the current implementation, MCA is logged in dom0 but
> >there is no way to notify the guest who caused it.
> 
> Sorry, I didn't see xen_mca handler purge and reload TLB in latest
> changeset.
> The code is commented out. Maybe I miss something, could you elaborate
> it?
> 
> 
>    1216     /* TLB error is only exist in this SAL error record */
>    1217     recover = (psp->tc && !(psp->cc || psp->bc || psp->rc ||
> psp->uc))
>    1218     /* other error recovery */
>    1219 #ifndef XEN
>    1220        || (ia64_mca_ucmc_extension
>    1221         && ia64_mca_ucmc_extension(
>    1222             IA64_LOG_CURR_BUFFER(SAL_INFO_TYPE_MCA),
>    1223             &ia64_sal_to_os_handoff_state,
>    1224             &ia64_os_to_sal_handoff_state));
>    1225 #else
> 
> >
> >> 2. If this is a platform MCA, other pCPUs wakened up may trigger this
> >> again.
> >
> >The platform MCA(CPE) is handled as correctable error. The other pCPUs
> >are not rendezvoused.
> 
> Are all platform MCAs belonging to CPE?
> 
> My understanding is, corrected platform MCA is CPE, and this MCA should
> have been corrected by firmware ( PAL or SAL), CPE interrupt is just
> used to inform OS something has happened.
> Uncorrected platform MCA still invoke OS_MCA, it still rendezvous other
> processors.
> 
> 
> 
> - Anthony 
> 
> 
> 
> 

_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.