Index: frysk-core/frysk/proc/IsaX8664.java =================================================================== RCS file: /cvs/frysk/frysk-core/frysk/proc/IsaX8664.java,v retrieving revision 1.18 diff -u -r1.18 IsaX8664.java --- frysk-core/frysk/proc/IsaX8664.java 5 Jul 2007 12:40:28 -0000 1.18 +++ frysk-core/frysk/proc/IsaX8664.java 6 Jul 2007 14:49:25 -0000 @@ -336,12 +336,15 @@ * attributed to entering a signal handler or a normal step * instruction notification. * - * x86_64 doesn't generate spurious trap events and this method - * always returns false on this architecture. + * On some kernels x86_64 doesn't generate spurious trap events (or + * rather doesn't set the stepping flag) after returning from a + * SYSCALL instruction. */ public boolean hasExecutedSpuriousTrap(Task task) { - return false; + long address = pc(task); + return (task.getMemory().getByte(address - 1) == (byte) 0x05 + && task.getMemory().getByte(address - 2) == (byte) 0x0f); } /**