• Martin Schwidefsky's avatar
    s390/signal: set correct address space control · fa968ee2
    Martin Schwidefsky authored
    If user space is running in primary mode it can switch to secondary
    or access register mode, this is used e.g. in the clock_gettime code
    of the vdso. If a signal is delivered to the user space process while
    it has been running in access register mode the signal handler is
    executed in access register mode as well which will result in a crash
    most of the time.
    Set the address space control bits in the PSW to the default for the
    execution of the signal handler and make sure that the previous
    address space control is restored on signal return. Take care
    that user space can not switch to the kernel address space by
    modifying the registers in the signal frame.
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
signal.c 13.5 KB