On Thu, Jan 22, 2004 at 10:44:16AM -0700, Tom Rini wrote: > On Wed, Jan 21, 2004 at 12:22:30PM -0700, Tom Rini wrote: > > On Wed, Jan 21, 2004 at 12:21:28PM -0700, Tom Rini wrote: > > > On Wed, Jan 21, 2004 at 11:42:17AM -0700, Tom Rini wrote: > > > > On Wed, Jan 21, 2004 at 10:23:12PM +0530, Amit S. Kale wrote: > > > > > > > > > Hi, > > > > > > > > > > Here it is: ppc kgdb from timesys kernel is available at > > > > > http://kgdb.sourceforge.net/kgdb-2/linux-2.6.1-kgdb-2.1.0.tar.bz2 > > > > > > > > > > This is my attempt at extracting kgdb from TimeSys kernel. It works well in > > > > > TimeSys kernel, so blame me if above patch doesn't work. > > > > > > > > Okay, here's my first patch against this. > > > > > > And dependant upon this is a patch to fixup the rest of the common PPC > > > code, as follows: > > > > And on top of all of that is the following, which allows KGDB to work on > > the Motorola LoPEC. > > On top of everything from yesterday, here's: First up: We need to call flush_instruction_cache() on a 'c' or 's' command. arch/ppc/kernel/ppc-stub.c | 19 ++++++------------- 1 files changed, 6 insertions(+), 13 deletions(-) --- 1.14/arch/ppc/kernel/ppc-stub.c Thu Jan 22 10:41:58 2004 +++ edited/arch/ppc/kernel/ppc-stub.c Thu Jan 22 10:49:30 2004 @@ -144,18 +144,6 @@ return; } /* gdb_regs_to_regs */ -/* exit_handler: - * - * This is called by the generic layer when it is about to return from - * the exception handler - */ -void -ppc_handler_exit(void) -{ -// flush_instruction_cache (); - return; -} - /* * This function does PoerPC specific procesing for interfacing to gdb. */ @@ -188,6 +176,12 @@ if (kgdb_hexToLong(&ptr, &addr)) linux_regs->nip = addr; +/* Need to flush the instruction cache here, as we may have deposited a + * breakpoint, and the icache probably has no way of knowing that a data ref to + * some location may have changed something that is in the instruction cache. + */ + flush_instruction_cache(); + /* set the trace bit if we're stepping */ if (remcomInBuffer[0] == 's') { #if defined (CONFIG_4xx) @@ -254,5 +248,4 @@ .sleeping_thread_to_gdb_regs = ppc_sleeping_thread_to_gdb_regs, .gdb_regs_to_regs = ppc_gdb_regs_to_regs, .handle_exception = ppc_handle_exception, - .handler_exit = ppc_handler_exit, }; -- Tom Rini http://gate.crashing.org/~trini/ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo _at_ vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Follow-Ups: References:
- Re: PPC KGDB changes and some help?Amit S. Kale
- Re: PPC KGDB changes and some help?Tom Rini
- Re: PPC KGDB changes and some help?Tom Rini
- Re: PPC KGDB changes and some help?Tom Rini
- Re: PPC KGDB changes and some help?Tom Rini
- Prev by Date: Re: [ACPI] Re: PROBLEM: ACPI freezes 2.6.1 on boot
- Next by Date: utf8 or utf-8
- Previous by thread: Re: PPC KGDB changes and some help?
- Next by thread: Re: PPC KGDB changes and some help?
- Indexes:[Main][Thread]