lwip-users
[Top][All Lists]
Advanced

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

Re: [lwip-users] LwIP stops sending data (but keeps retrying forever) -


From: Bill Auerbach
Subject: Re: [lwip-users] LwIP stops sending data (but keeps retrying forever) - caused by buffer chaining
Date: Thu, 28 Mar 2013 08:24:30 -0400

Jeremy,

 

There are so many changes, bug fixes and enhancements in 1.4.1 that I strongly recommend updating.  And if this is a bug and it’s been fixed, that means updating to 1.4.1 to get it anyway.  Or diffing the changes and back-porting it.

 

Bill

 

From: address@hidden [mailto:address@hidden On Behalf Of Jeremy Spiller
Sent: Wednesday, March 27, 2013 5:29 PM
To: address@hidden
Subject: [lwip-users] LwIP stops sending data (but keeps retrying forever) - caused by buffer chaining

 

I’m using version 1.3.2.  In the case where I do this:

 

tcp_write(pcb, (void*)"\r\n", 2, TCP_WRITE_FLAG_COPY);
tcp_write(pcb, (void*)">", 1, TCP_WRITE_FLAG_COPY);

Communications stop, but LwIP keeps retrying forever.  I can fix the problem by making the following modification in tcp_enqueue:

 

  /* If there is room in the last pbuf on the unsent queue,
  chain the first pbuf on the queue together with that. */
  if (TCP_ALLOW_BUFFER_CHAINING_JMS &&

        ...

 

With TCP_ALLOW_BUFFER_CHAINING_JMS set to false, the problem goes way.  I suspect the packets are going out, but have an incorrect checksum or are permanently corrupted somewhere along the way.  BTW, I’m using LwIP functions in only one thread (the main loop) and only outside of interrupts, so I don’t think it’s a threading issue.

 

Is this a bug, or is something else going on?

 

-Jeremy

 

 


reply via email to

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