[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: debugging ns:



Hi Dan,

You don't tell us what changes you made, nor what your script looks like,
so it is somewhat hard to identify potential problems.

However, you might look at ns-debugging web page; it contains some hints on 
debugging in ns that should prove useful to you.

Thanks,


Kannan

At 09:41 PM 11/6/97 -0800, Dan Li wrote:
>
>I make some changes to ns and now experience semi-random SIGSEGV (because
>it may occur at different places with a high probability at one certain
>place.) It normally fail at Replicator::recv(). Whenever I try use
>breakpoint to see Classifier::install() in order to figure out how a bad
>slot is installed, the NEXT Classifier::install() must be a SIGSEGV on
>"maxslot_ = slot;" which doesn't look like SIGSEGV-prone to me.
>
>The two SIGSEGV are listed below. I highly appreciate any guesses, hints,
>and suggestions!
>
>---------------------------------------------------------------------------
>Program received signal SIGSEGV, Segmentation fault.
>0x80090cc in Replicator::recv (this=0x81b0190, p=0x81ac038) at
>replicator.cc:118
>118             slot_[maxslot_]->recv(p);
>(gdb) p slot_
>$6 = (NsObject **) 0x81b4758
>(gdb) p slot_[maxslot_]
>$7 = (NsObject *) 0x89
>(gdb) p *slot_[maxslot_]
>Cannot access memory at address 0x89.  
>------------------------------------------------------------------------
>Breakpoint 4, Classifier::install (this=0x812f840, slot=0, p=0x81324f0)
>    at classifier.cc:95
>95                      maxslot_ = slot;
>(gdb) c
>Continuing.
>
>Program received signal SIGSEGV, Segmentation fault.
>Classifier::install (this=0x812f840, slot=0, p=0x81324f0) at
>classifier.cc:95
>95                      maxslot_ = slot; 
>
>