Re: [PATCH] i386 - Fix regression, endless loop in ptrace singlestepover an int80

From: Jeremy Fitzhardinge
Date: Mon Jul 02 2007 - 17:07:26 EST


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.

Looks reasonable to me, but what under what circumstances can TIF_SINGLESTEP get lost?

J

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/