Ravi Mishra wrote:
> Please help me and provide your suggetion for finding the cause of crash
> dump.
> I am providing the pease of code where dump is occur.
> 
> The problem is that that crash comes after a random time(some time in 5hr
> asnd some time in around 11 hr).
> 
> so that is very much difficult to track this dump.
> 
> Here is the piece of code.
> ===========
> void macHandle_CongestionIndication(VTASK *vtask,
> AISUE_PRIMSAISUE_tnl_congestion_ind* congInd)
> {
>    VARIABLE_STR* var = (VARIABLE_STR*) vtask->var;
>    MacCommon* mac = &var->mac;

You aren't testing for NULLs here.  You assume the structures are 
accessible.  What if they weren't allocated correctly?


>    if(mac->stepsOfCongestionCounter == 0)
>        return;
> 
>    if (congInd->congestionStatus ==
> no_congestion_AIS_IEsAIS_TnlCongestionStatus)

Ditto previous comment.


>    {
>        if(mac->congestionCounter[congInd->macDflow] > 0)
>        {
>                  if(mac->congestionTimerInstance[congInd->macDflow])
>                  {
>                          timerStopInst
> (mac->congestionTimerInstance[congInd->macDflow]);
> 
> mac->congestionTimerInstance[congInd->macDflow]=NULL;
>                  }
> 
>            mac->congestionCounter[congInd->macDflow] -= 1 ;
>          if(mac->congestionCounter[congInd->macDflow] > 0)
>          {
> 
>  mac->congestionTimerInstance[congInd->macDflow]=timerStartInst_ms (vtask,
> MAC_CONG_CTRL,mac->congestionTimerDuration, (void*)congInd->macDflow);
> /*YGA_17-Oct-08_60523_Changed_timerStartInst to timerStartInst_ms*/
>          }
>       }
>    }
>    else if ((congInd->congestionStatus ==
> delay_build_up_AIS_IEsAIS_TnlCongestionStatus) || (congInd->congestionStatus
> == frame_loss_AIS_IEsAIS_TnlCongestionStatus))
>    {
> 
> if(mac->congestionCounter[congInd->macDflow] <
> mac->stepsOfCongestionCounter)
>       {
>                 if(mac->congestionCounter[congInd->macDflow] >0)
>                  if(mac->congestionTimerInstance[congInd->macDflow]){
>                timerStopInst
> (mac->congestionTimerInstance[congInd->macDflow]);
> 
>  mac->congestionTimerInstance[congInd->macDflow]=NULL;
>                 }
>          mac->congestionCounter[congInd->macDflow] += 1 ;
> 
> 
>  mac->congestionTimerInstance[congInd->macDflow]=timerStartInst_ms (vtask,
> MAC_CONG_CTRL,mac->congestionTimerDuration, (void*)congInd->macDflow);
> /*YGA_17-Oct-08_60523_Changed_timerStartInst to timerStartInst_ms*/
>                }
>       }
>    else
>    {
>       Printf("ERR_FATAL\n");
>    }
> }
> 
> 
> 
> Thanks in advance
> Ravi

It would be helpful to know what line the code is crashing on.

-- 
Thomas Hruska
CubicleSoft President
Ph: 517-803-4197

*NEW* MyTaskFocus 1.1
Get on task.  Stay on task.

http://www.CubicleSoft.com/MyTaskFocus/

Reply via email to