Jason, Thanks for the detailed explanations! I have one question on x86_64 bit machines. How to eliminate the "<value optimized out>"? I have tried to remove the optimization for size but it doesn't help.
Could you help me that? Thanks, Neo On Wed, May 21, 2008 at 5:50 AM, Jason Wessel <[EMAIL PROTECTED]> wrote: > It is entirely possible that the kgdb patches for the 2.6.24 kernel do > not work correctly on the ARM architecture. > > If you comment out the architecture initialization though, the undefined > instruction handler does not get installed that allows kgdb to function > properly on this architecture. > > If you absolutely must use the 2.6.24 kernel perhaps you should use the > older version of kgdb prior to the new design implementation. > > http://git.kernel.org/?p=linux/kernel/git/jwessel/linux-2.6-kgdb.git;a=shortlog;h=kgdb_old_2.6.24 > > Presently the single processor arch=arm support works correctly and was > validated on real hardware in the kgdb-next branch. > > http://git.kernel.org/?p=linux/kernel/git/jwessel/linux-2.6-kgdb.git;a=shortlog;h=kgdb-next > > The typical way to work with kgdb in git is as follows > --- > > ##First start by getting a initial git clone from Linus's tree. > > git clone > git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git > > ##Now you can add a tracking branch for kgdb with: > > git remote add kgdb > git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb.git > git remote update > > ##At this point all the remote branches exist and you could elect to > ##look at one, such as the kgdb-next tree. > > git checkout kgdb/kgdb-next > > ##First start by getting a initial git clone from Linus's tree. > > git clone > git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git > > ##Now you can add a tracking branch for kgdb with: > > git remote add kgdb > git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb.git > git remote update > > ##At this point all the remote branches exist and you could elect to > ##look at one, such as the kgdb-next tree. > > git checkout kgdb/kgdb-next > > ##Now you can exectute all the normal git operations you would like to > ##execute to create patches or take a look at things. Do remeber that > ##you should consider updating your repository with "git remote update" > ##periodically to fetch the latest as the kgdb patches are frequently > ##re-based against the tip of the kernel tree. > ## > ##Here is a useful command: > > ## Output the whole patch series for kgdb-next as a quilt patch set > > git-checkout kgdb/kgdb-next > rm -rf tmp > git-format-patch -n -o tmp master > ls tmp > tmp/series > > The git documentation is a good source to understanding the basics as > well as anything complex you might like to do: > > http://www.kernel.org/pub/software/scm/git/docs/ > > Jason. > > Rupesh Gujare wrote: >> Hi all, >> I am new to kgdb. I am trying to debug over ethernet. But it is >> crashing when I try to connect from remote gdb. It seems that it is >> crashing in kgdb_breakpoint() function. >> >> I am testing it on ARM board. also I found that i have to comment >> kgdb_arch_init() from kernel/kgdb.c, in order to initialize ARM >> architecture specific initialization from arch/arm/kernel/kgdb.c >> I am using 2.6.24 kernel for testing. Please tell me where I am going >> wrong? >> >> OOPS message:- >> >> 320/0xe14) >> >> [<c006649c>] (kgdb_handle_exception+0x0/0xe14) from [<c0026ca0>] >> (kgdb_compiled >> >> brk_fn+0x2c/0x38) >> >> [<c0026c74>] (kgdb_compiled_brk_fn+0x0/0x38) from [<c00201a0>] >> (do_undefinstr+0x >> >> 13c/0x1f8) >> >> [<c0020064>] (do_undefinstr+0x0/0x1f8) from [<c0020c04>] >> (__und_svc+0x44/0x60) >> >> Exception stack(0xc541fee0 to 0xc541ff28) >> >> fee0: 00000033 00000000 c04bda00 00000001 c028c37c 00000000 c001d9c0 >> 00000000 >> >> ff00: c541e000 00000000 00000001 c541ff34 c541ff38 c541ff28 c0065adc >> c0065a68 >> >> ff20: 40000013 ffffffff >> >> r8:c541e000 r7:00000000 r6:c001d9c0 r5:c541ff14 r4:ffffffff >> >> [<c0065a44>] (kgdb_breakpoint+0x0/0x44) from [<c0065adc>] >> (kgdb_initial_breakpoi >> >> nt+0x24/0x30) >> >> [<c0065ab8>] (kgdb_initial_breakpoint+0x0/0x30) from [<c0065f3c>] >> (kgdb_register >> >> _io_module+0xf8/0x130) >> >> [<c0065e44>] (kgdb_register_io_module+0x0/0x130) from [<c0148e48>] >> (configure_kg >> >> dboe+0x6c/0xb0) >> >> r5:00000000 r4:c04c4b30 >> >> [<c0148ddc>] (configure_kgdboe+0x0/0xb0) from [<c0148fc0>] >> (init_kgdboe+0x24/0x4 >> >> c) >> >> r4:c04c4b30 >> >> [<c0148f9c>] (init_kgdboe+0x0/0x4c) from [<c0008964>] >> (kernel_init+0xc8/0x290) >> >> r5:00000000 r4:c001e404 >> >> [<c000889c>] (kernel_init+0x0/0x290) from [<c003c0ec>] (do_exit+0x0/0x730) >> >> >> Thanks, >> Rupesh. >> >> >> ------------------------------------------------------------------------- >> This SF.net email is sponsored by: Microsoft >> Defy all challenges. Microsoft(R) Visual Studio 2008. >> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >> _______________________________________________ >> Kgdb-bugreport mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/kgdb-bugreport >> > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Kgdb-bugreport mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/kgdb-bugreport > -- I would remember that if researchers were not ambitious probably today we haven't the technology we are using! ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://sourceforge.net/services/buy/index.php _______________________________________________ Kgdb-bugreport mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/kgdb-bugreport
