Description of problem:
ppc64 arches can crash when single setpping a debugger through syscall return
code. Currently the ppc64 user stack is restored before clearing the RI bit in
the MSR. Before the RI bit is cleared, traps are allowed, and if one is taken
after the stack is resored, but before the RI bit is cleared, unpredictable and
fatal results (oopses) can occur.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Use a hardware/jtag debugger to write software interrupt instructions
(software breakpoints), to the code addresses between the instructions in
entry.S where the user stack is restored and the RI bit is cleared in the
2. execute a syscall in user space.
System will crash
Breakpoint is handled, system does not crash
Created attachment 112418 [details]
patch to swap stack restore/RI clear ordering
attached patch has been accepted on rhkernel-list for RHEL4-U2.
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.