On 07/02/2007 04:53 PM, Jason Wessel wrote:
Attached is a patch with a complete test case to fix the regression
introduced by the commit: 635cf99a80f4ebee59d70eb64bb85ce829e4591f.
This patch is against kernel 2.6.21 but the fix is applicable to 2.6.21
and up. Prior to the commit that introduced the regression the ltp
ptrace tests would complete correctly. I augmented the test case from
the original patch header to include the problem case that shows up in
the lpt tests.
The brief summary is that the the TIF_SINGLESTEP state needs to be
altered on the exit path and not the entry path to a syscall, else it
can loop forever on the same instruction right after the syscall is
executed in certain cases.
Where does it loop?