SIGSEGV/SIGBUS specific handling on s390, to cope with kernel peculiarity

On s390, the linux kernel does not deliver the exact address that
caused a SEGV but rather this address rounded down to a page boundary.
Also, old kernels do not deliver the address that caused a SIGBUS,
but deliver 0.
So, on s390, handle SIGSEGV and SIGBUG by always skipping one page
starting from the current value of the ptr scanning position.
As we need a correct value of ptr on this platform in the longjmp-ed
code, ptr is marked as volatile.
 


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13648 a5019735-40e9-0310-863c-91ae7b9d1cf9