gdb stopped working in 2.5.10 - works fine in 2.4.x

gdb stopped working in 2.5.10 - works fine in 2.4.x

Post by Jurriaan on Alph » Sat, 27 Apr 2002 22:00:22



ALPHA :gdb ./angband
GNU gdb 5.1.1
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "alpha-linux"...
(gdb) run
Starting program: /usr/local/games/angband-2.9.7-alpha1/./angband
warning: Cannot insert breakpoint -2:
Cannot access memory at address 0xcc1088a823d9d62c
(gdb) q
The program is running.  Exit anyway? (y or n) y
ALPHA :

the breakpoint with a negative number, followed by the message 'Cannot
access memory at ...' happens on any executable I try with gdb.

This didn't happen with the 2.4.x kernels, so I suspect something in
2.5.x. Any ideas?

Thanks,
Jurriaan
--
After penetrating your skull the decibel storm of raucous riffs and
blistering glissandos starts rearranging the synapses in your brain.
You have arrived on the territory of Tribe Apocalyptica.
        Apocalyptica, liner notes to 'Cult'
GNU/Linux 2.5.10 on Debian/Alpha 990 bogomips load:0.15 0.53 0.66
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in

More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

 
 
 

gdb stopped working in 2.5.10 - works fine in 2.4.x

Post by Ivan Kokshaysk » Sat, 27 Apr 2002 23:10:10



> the breakpoint with a negative number, followed by the message 'Cannot
> access memory at ...' happens on any executable I try with gdb.

> This didn't happen with the 2.4.x kernels, so I suspect something in
> 2.5.x. Any ideas?

Yes, gdb and strace are broken since 2.5.6, IIRC.
Some necessary 'thread_info' changes still are missing in ptrace.c.
Fix appended.

Ivan.

--- 2.5.9/arch/alpha/kernel/ptrace.c    Sun Apr 14 23:18:55 2002

                zero = 0;
                addr = &zero;
        } else {
-               addr = (long *)((long)task + regoff[regno]);
+               addr = (long *)((long)task->thread_info + regoff[regno]);
        }
        return addr;

                if ((unsigned long) data > _NSIG)
                        goto out;
                if (request == PTRACE_SYSCALL)
-                       set_thread_flag(TIF_SYSCALL_TRACE);
+                       set_tsk_thread_flag(child, TIF_SYSCALL_TRACE);
                else
-                       clear_thread_flag(TIF_SYSCALL_TRACE);
+                       clear_tsk_thread_flag(child, TIF_SYSCALL_TRACE);
                child->exit_code = data;
                wake_up_process(child);

                        goto out;
                /* Mark single stepping.  */
                child->thread_info->bpt_nsaved = -1;
-               clear_thread_flag(TIF_SYSCALL_TRACE);
+               clear_tsk_thread_flag(child, TIF_SYSCALL_TRACE);
                wake_up_process(child);
                child->exit_code = data;
                /* give it a chance to run. */
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in

More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/