diff options
author | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2010-04-09 13:43:00 +0200 |
---|---|---|
committer | Martin Schwidefsky <sky@mschwide.boeblingen.de.ibm.com> | 2010-04-09 13:43:02 +0200 |
commit | 176b1803ce4690d0dd94e16f118dbd14af045034 (patch) | |
tree | 92601341680bf89e42ed0073bd5086d16405356c /lib | |
parent | 35ac734f72d846f250c0344913a91f954ea764c3 (diff) | |
download | op-kernel-dev-176b1803ce4690d0dd94e16f118dbd14af045034.zip op-kernel-dev-176b1803ce4690d0dd94e16f118dbd14af045034.tar.gz |
[S390] fix io_return critical section cleanup
If a machine check interrupts the io interrupt handler on one of the
instructions between io_return and io_leave the critical section
cleanup code will move the return psw to io_work_loop. By doing that
the switch from the asynchronous interrupt stack to the process stack
is skipped. If e.g. TIF_NEED_RESCHED is set things break because
the scheduler is called with the asynchronous interrupts stack.
Moving the psw back to io_return instead fixes the problem.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'lib')
0 files changed, 0 insertions, 0 deletions