Chris Lattner a écrit : >>>> Richard Guenther wrote: >>>>> We didn't yet run into this issue and build openSUSE with 4.3 since >>>>> more >>>>> than >>>>> three month. >>>> >>>> Well, how often do you take a trap inside an overlapping memmove()? >>> >>> How hard is it to change the kernel signal entry path from "pushf" to >>> "pushf;cld"? Problem solved, no? >> >> The problem is with old kernels, which by definition stay unfixed. > > My impression was that the problem occurs in GCC compiled code in the > kernel itself, not in user space: > > 1. User space has direction flag set. > 2. signal occurs > 3. kernel code is entered > 4. kernel code does string operation <boom>
Wrong. Except maybe for the Hurd kernel. For other kernels: 4. signal handler is called 5. signal handler does string operation <boom> The GCC used to compile the kernel doesn't matter. Using gcc 4.3 to compile the user code triggers the bug. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [EMAIL PROTECTED] | [EMAIL PROTECTED] `- people.debian.org/~aurel32 | www.aurel32.net