# HG changeset patch # User yamahata@xxxxxxxxxxxxx # Date 1198236775 -32400 # Node ID 34c1ed3991857638a1913bb62a35dea1f280b64d # Parent e5841fc7e4bed8687d5d5dcbb23cec37429531f1 fix PV break fault handler. PV domain break fault handler calls C routine reflect_event() with psr.ic = 0. It might cause unrecoverable tlb miss. set psr.ic=1 before calling it. PATCHNAME: fix_break_fault Signed-off-by: Isaku Yamahata diff -r e5841fc7e4be -r 34c1ed399185 xen/arch/ia64/xen/ivt.S --- a/xen/arch/ia64/xen/ivt.S Fri Dec 21 20:54:46 2007 +0900 +++ b/xen/arch/ia64/xen/ivt.S Fri Dec 21 20:32:55 2007 +0900 @@ -714,15 +714,20 @@ 1: adds r2=PT(CR_IFS)+16,r12 ;; st8 [r2]=r20 - ;; + ssm psr.ic | PSR_DEFAULT_BITS + ;; + srlz.i + ;; br.call.sptk.many b0=reflect_event ;; + rsm psr.i|psr.ic adds r2=PT(R14)+16,r12 adds r3=PT(R8)+16,r12 ;; //r16 contains ar.bsp before cover ld8 r16=[r2] ld8 r8=[r3] + srlz.i ;; br.sptk.many ia64_ret_from_syscall ;;