Hi, GDB refuses to access i386 CPU registers if no frame has been detected with: (gdb) set $eax = 3 Value being assigned to is no longer active. Attached patch ports the existing amd64 code for i386. Attached testcase expects to be able to compile with "-m32" on amd64/gcc, is it an acceptable expectations? Testcase(+me) does not fully test the proper access of the further frames information. Regards, Jan From the original bugreport: ----- ps.S #include _start: .globl _start sub %ebx,%ebx int3 jnz good incl %ebx good: movl $__NR_exit,%eax int $0x80 ----- $ gcc -o ps -nostartfiles -nostdlib ps.S $ gdb ps (gdb) run Program received signal SIGTRAP, Trace/breakpoint trap. 0x08048057 in _start () (gdb) set $eax = 3 Value being assigned to is no longer active. Original bugreport from John Reiser: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=250024