linux/Documentation/powerpc
Michael Neuling 6ce6c629fd powerpc/tm: Abort on emulation and alignment faults
If we are emulating an instruction inside an active user transaction that
touches memory, the kernel can't emulate it as it operates in transactional
suspend context.  We need to abort these transactions and send them back to
userspace for the hardware to rollback.

We can service these if the user transaction is in suspend mode, since the
kernel will operate in the same suspend context.

This adds a check to all alignment faults and to specific instruction
emulations (only string instructions for now).  If the user process is in an
active (non-suspended) transaction, we abort the transaction go back to
userspace allowing the HW to roll back the transaction and tell the user of the
failure.  This also adds new tm abort cause codes to report the reason of the
persistent error to the user.

Crappy test case here http://neuling.org/devel/junkcode/aligntm.c

Signed-off-by: Michael Neuling <mikey@neuling.org>
Cc: <stable@vger.kernel.org> # v3.9
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2013-06-01 08:29:22 +10:00
..
00-INDEX powerpc: remove PReP platform 2013-04-18 13:03:53 +10:00
bootwrapper.txt
cpu_features.txt Documentation/powerpc: Fix path to the powerpc directory 2013-01-10 17:01:50 +11:00
eeh-pci-error-recovery.txt powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
firmware-assisted-dump.txt fadump: Add documentation for firmware-assisted dump. 2012-02-23 10:50:00 +11:00
hvcs.txt Fix common misspellings 2011-03-31 11:26:23 -03:00
kvm_440.txt
mpc52xx.txt Documentation/powerpc/mpc52xx.txt: Checkpatch cleanup 2012-03-18 23:59:34 +01:00
ptrace.txt powerpc/ptrace: Add DAWR debug feature info for userspace 2013-04-18 15:59:55 +10:00
qe_firmware.txt trivial: Miscellaneous documentation typo fixes 2009-06-12 18:01:47 +02:00
transactional_memory.txt powerpc/tm: Abort on emulation and alignment faults 2013-06-01 08:29:22 +10:00