History

powerpc/tm: Make room for hypervisor in abort cause codes

PAPR carves out 0xff-0xe0 for hypervisor use of transactional memory software abort cause codes. Unfortunately we don't respect this currently. Below fixes this to move our cause codes to below this region.

Michael Neuling committed 13 years ago

Commit 35f70971 parent 58f8bbd1 file · +8 −7Browse files

Unified · Split

arch/powerpc/include/asm/reg.h+8−7
@@ -113,14 +113,15 @@ · 112 unmodified lines
113113
114114 /* Reason codes describing kernel causes for transaction aborts. By
115115 convention, bit0 is copied to TEXASR[56] (IBM bit 7) which is set if
116− the failure is persistent.
116+ the failure is persistent. PAPR saves 0xff-0xe0 for the hypervisor.
117117 */
118−#define TM_CAUSE_RESCHED 0xfe
119−#define TM_CAUSE_TLBI 0xfc
120−#define TM_CAUSE_FAC_UNAV 0xfa
121−#define TM_CAUSE_SYSCALL 0xf9 /* Persistent */
122−#define TM_CAUSE_MISC 0xf6
123−#define TM_CAUSE_SIGNAL 0xf4
118+#define TM_CAUSE_PERSISTENT 0x01
119+#define TM_CAUSE_RESCHED 0xde
120+#define TM_CAUSE_TLBI 0xdc
121+#define TM_CAUSE_FAC_UNAV 0xda
122+#define TM_CAUSE_SYSCALL 0xd8 /* future use */
123+#define TM_CAUSE_MISC 0xd6 /* future use */
124+#define TM_CAUSE_SIGNAL 0xd4
124125
125126 #if defined(CONFIG_PPC_BOOK3S_64)
126127 #define MSR_64BIT MSR_SF