Daniel Jacobowitz wrote: > On Fri, Nov 03, 2006 at 08:05:32PM -0500, Nick Lewycky wrote: > >>Attached. Here's the exact session I ran: > >>ptrace(0x19 /* PTRACE_??? */, 29003, 0xc, 0xff888354) = -1 EINVAL (Invalid >>argument) > >>>>Architecture: i386 (x86_64) >>>>Shell: /bin/sh linked to /bin/bash >>>>Kernel: Linux 2.6.18.1 >>> >>>Does this mean you're running a 32-bit installation and a 64-bit >>>kernel? Did you build the kernel yourself? >> >>Yes and yes. > > It completely didn't occur to me until just now, but this was the right > question. A 32-bit GDB will not work on threaded programs on a 64-bit > kernel; it's just broken. I believe the problem is a ptrace operation > that is not properly emulated by the 32-bit compatibility layer. I'm > afraid this is a kernel bug.
Ok, I agree with you that the kernel is the issue here, but that can't be the whole explanation. I just rolled back to my previous kernel, 2.6.15.6 x86_64 and the example works fine. So the architecture alone isn't the issue, unless the kernel developers ripped support out, deliberately breaking backwards compatibility with userspace. Would you like another strace? Nick -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]