powerpc: Implement load_unaligned_zeropad
authorAnton Blanchard <anton@samba.org>
Thu, 18 Sep 2014 23:40:19 +0000 (09:40 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Tue, 30 Sep 2014 04:59:12 +0000 (14:59 +1000)
commitde5946c03575fb8c222610a6ac6726a5deabad46
tree9df28ec080f641f05aa2440b66284a2cbf18ccf2
parent6d31c2fa0eee89e31ca48a66ccfaf71ef545c474
powerpc: Implement load_unaligned_zeropad

Implement a bi-arch and bi-endian version of load_unaligned_zeropad.

Since the fallback case is so rare, a userspace test harness was used
to test this on ppc64le, ppc64 and ppc32:

http://ozlabs.org/~anton/junkcode/test_load_unaligned_zeropad.c

It uses mprotect to force a SEGV across a page boundary, and a SEGV
handler to lookup the exception tables and run the fixup routine.
It also compares the result against a normal load.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/include/asm/word-at-a-time.h