lwip-users
[Top][All Lists]
Advanced

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

Re: [lwip-users] ERROR:Assertion failed: "tcp_slowtmr: active pcb->state


From: Sergio R. Caprile
Subject: Re: [lwip-users] ERROR:Assertion failed: "tcp_slowtmr: active pcb->state != CLOSED" at line 662 in tcp.c
Date: Mon, 08 Jun 2015 11:51:13 -0300
User-agent: Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Thunderbird/31.7.0

I don't know if 1.3.2 has the following comment before the function:

/**
 * Called every 500 ms and implements the retransmission timer and the
timer that
 * removes PCBs that have been in TIME-WAIT for enough time. It also
increments
 * various timers such as the inactivity timer in each PCB.
 *
 * Automatically called from tcp_tmr().
 */
void
tcp_slowtmr(void)


But I bet it sure has some code looking sort of like this one:

tcp_slowtmr_start:
  /* Steps through all of the active PCBs. */
  prev = NULL;
  pcb = tcp_active_pcbs;
  if (pcb == NULL) {
    LWIP_DEBUGF(TCP_DEBUG, ("tcp_slowtmr: no active pcbs\n"));
  }
  while (pcb != NULL) {
    LWIP_DEBUGF(TCP_DEBUG, ("tcp_slowtmr: processing active pcb\n"));
    LWIP_ASSERT("tcp_slowtmr: active pcb->state != CLOSED\n", pcb->state
!= CLOSED);


As far as I understand, you seem to have an active pcb that stays CLOSED
for too long.
Perhaps you forgot to free it ?
Anything else to give us a clue ?
What are you actually doing with what and how do you end up there ?

-- 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]