Problem setting breakpoints with BDI2000

3 messages, 3 authors, 2002-05-21 · open the first message on its own page

Problem setting breakpoints with BDI2000

From: Rudolf Ladyzhenskii <hidden>
Date: 2002-05-21 02:38:01

Hi, all

I have BDI2000 with software version v1.11
I have problems setting a breakpoint. I am trying to set a breakpoint in the
start_kernel() function to debug misbehaving kernel.
So, at command line I type:
bi 0xXXXXXXXX, where 0xXXXXXXXX is address of start_kernel out of map file.
BDI does not stop there, it passes this breakpoint. IO tried it with HARD
and SOFT breakpoints.

I know that my kernel gets into infinite loop in timer interrupt. So I put a
breakpoint there -- same! Nothing happens.

I tried to connect to BDI with DDD. I can successfully load the kernel and
start the kernel. When it freezes, I can halt BDI2000 and single step the
kernel. I can now use breakpoints freely -- all works.
Basically, if I start kernel, BDI does not react to any of the breakpoints.
It starts to react on them once it was stopped at least once.

Any help is greatly appreciated,
Thanks,



/************************/
Rudolf Ladyzhenskii
DSP Engineer
Advanced Communication Technologies
ph.  +61 3 8080 8215
fax. +61 3 9672 8800
Level 9, 341 Queen Street,
Melbourne, 3000
Australia
/***********************/


** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

RE: Problem setting breakpoints with BDI2000

From: Chris Hallinan <hidden>
Date: 2002-05-21 03:25:35

Rudolf Ladyzhenskii wrote
Hi, all

I have BDI2000 with software version v1.11
I have problems setting a breakpoint. I am trying to set
a breakpoint in the
start_kernel() function to debug misbehaving kernel.
So, at command line I type:
bi 0xXXXXXXXX, where 0xXXXXXXXX is address of
start_kernel out of map file.
BDI does not stop there, it passes this breakpoint. IO
tried it with HARD
and SOFT breakpoints.
It's hard to answer your questions without knowing your target
processor type, and it would be useful to know the kernel version
and boot loader you are using.

If I am not mistaken, addresses entered using the BDI-2000 telnet
interface are physical addresses for certain target processors.  You
are entering virtual addresses from the system.map file.
I know that my kernel gets into infinite loop in timer
interrupt. So I put a
breakpoint there -- same! Nothing happens.
This is a common problem.  I'm guessing your decrementer is set
wrong, causing the interrupt to happen many times faster than it is
supposed to.  That is, as soon as you exit from the decrementer
exception, you are immediately entering it again, making it _look_
like an infinite loop :)
I tried to connect to BDI with DDD. I can successfully
load the kernel and
start the kernel. When it freezes, I can halt BDI2000 and
single step the
kernel. I can now use breakpoints freely -- all works.
Is this through telnet or gdb??  This is the way it's supposed to
work :)
Basically, if I start kernel, BDI does not react to any
of the breakpoints.
It starts to react on them once it was stopped at least once.
Make sure the MMU setting in your .cfg file is set properly.

-Chris Hallinan


** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

Re: Problem setting breakpoints with BDI2000

From: Tom Rini <hidden>
Date: 2002-05-21 15:42:02

On Tue, May 21, 2002 at 12:38:01PM +1000, Rudolf Ladyzhenskii wrote:
Hi, all

I have BDI2000 with software version v1.11
I have problems setting a breakpoint. I am trying to set a breakpoint in the
start_kernel() function to debug misbehaving kernel.
So, at command line I type:
bi 0xXXXXXXXX, where 0xXXXXXXXX is address of start_kernel out of map file.
BDI does not stop there, it passes this breakpoint. IO tried it with HARD
and SOFT breakpoints.
What order did you do it in?  That's important.  You need to 'halt',
'load', 'bi 0xabcdef12', 'go'

If you use hard breakpoints, make sure to do a 'ci' and then 'break
soft' either just before attaching with GDB or after attaching but
before you do anything else.

--
Tom Rini (TR1265)
http://gate.crashing.org/~trini/

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help