[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [XenPPC] [pushed] [ppc] track hid4 on exceptions to detect a possible RM_CI "leak"
changeset: 10289:3511247bfd5cb2a5f7c9f51c756713270061ca42 user: jimix@xxxxxxxxxxxxxxxxxxxxx date: Thu May 18 13:25:18 2006 -0400 files: xen/arch/ppc/exceptions.c xen/arch/ppc/ppc64/asm-offsets.c xen/arch/ppc/ppc64/exceptions.S xen/include/public/arch-ppc64.h description: [ppc] track hid4 on exceptions to detect a possible RM_CI "leak" diff -r 8042b9eefdc5bd44cd071676dbbd3b5106f11f94 -r 3511247bfd5cb2a5f7c9f51c756713270061ca42 xen/arch/ppc/exceptions.c --- a/xen/arch/ppc/exceptions.c Thu May 18 13:17:37 2006 -0400 +++ b/xen/arch/ppc/exceptions.c Thu May 18 13:25:18 2006 -0400 @@ -95,6 +95,7 @@ void program_exception(struct cpu_user_r #else /* CRASH_DEBUG */ show_registers(regs); printk("dar 0x%016lx, dsisr 0x%08x\n", mfdar(), mfdsisr()); + printk("hid4 0x%016lx\n", regs->hid4); panic("%s: 0x%lx\n", __func__, cookie); #endif /* CRASH_DEBUG */ } diff -r 8042b9eefdc5bd44cd071676dbbd3b5106f11f94 -r 3511247bfd5cb2a5f7c9f51c756713270061ca42 xen/arch/ppc/ppc64/asm-offsets.c --- a/xen/arch/ppc/ppc64/asm-offsets.c Thu May 18 13:17:37 2006 -0400 +++ b/xen/arch/ppc/ppc64/asm-offsets.c Thu May 18 13:25:18 2006 -0400 @@ -44,6 +44,7 @@ void __dummy__(void) OFFSET(UREGS_lr, struct cpu_user_regs, lr); OFFSET(UREGS_ctr, struct cpu_user_regs, ctr); OFFSET(UREGS_xer, struct cpu_user_regs, xer); + OFFSET(UREGS_hid4, struct cpu_user_regs, hid4); OFFSET(UREGS_cr, struct cpu_user_regs, cr); OFFSET(UREGS_fpscr, struct cpu_user_regs, fpscr); DEFINE(UREGS_sizeof, sizeof(struct cpu_user_regs)); diff -r 8042b9eefdc5bd44cd071676dbbd3b5106f11f94 -r 3511247bfd5cb2a5f7c9f51c756713270061ca42 xen/arch/ppc/ppc64/exceptions.S --- a/xen/arch/ppc/ppc64/exceptions.S Thu May 18 13:17:37 2006 -0400 +++ b/xen/arch/ppc/ppc64/exceptions.S Thu May 18 13:25:18 2006 -0400 @@ -333,6 +333,9 @@ exception_vectors_end: * a better way, but this works for now. */ ex_program_continued: SAVE_GPRS r14, r31, r1 /* save all the non-volatiles */ + /* save hid4 for debug */ + mfspr r14, SPRN_HID4 + std r14, UREGS_hid4(r1) mr r14, r0 EXCEPTION_SAVE_STATE r1 mr r4, r14 diff -r 8042b9eefdc5bd44cd071676dbbd3b5106f11f94 -r 3511247bfd5cb2a5f7c9f51c756713270061ca42 xen/include/public/arch-ppc64.h --- a/xen/include/public/arch-ppc64.h Thu May 18 13:17:37 2006 -0400 +++ b/xen/include/public/arch-ppc64.h Thu May 18 13:25:18 2006 -0400 @@ -77,6 +77,7 @@ typedef struct cpu_user_regs uint64_t msr; uint64_t fpscr; uint64_t xer; + uint64_t hid4; uint32_t cr; uint32_t entry_vector; } cpu_user_regs_t; _______________________________________________ Xen-ppc-devel mailing list Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ppc-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |