On Mon, 2011-04-18 at 10:17 +0200, Tazzari Davide wrote: > > The TCP_SEG pcb seems completely lost as written in my first post. > > TCP_SEG Stats: Max Used 12, Max 12, Used 12, Error 23 > > The error is growning up one per each requests. Firefox makes 3 > requests per reload and the error has grown from 23 to 26
I'm pretty sure this is the cause of your problems: the stack has no available packet buffers, and so can't deal with your requests. Why it has got into this state is the problem you have to solve. I would look at all the tasks that can call into lwIP: you application, the device driver, timers, etc. and check how they are doing this. If you can post how each of these is done, and how they are protected against the others, that would help. I suspect that for example you have timers running while you're processing a received packet or something like that which leads to a list of packets being corrupted, those packets on the list are leaked, and you're stuck. > > I have seen also that the SYS_TIMEOUT has a lot of errors: 188! > > In this case the stats are Max Used 6, Max 6, Used 1, Error 188 > > After a request, the error doesn’t increase. That is also interesting, but I'm not sure off the top of my head what those errors indicate. > Last, but not least, the mem ram pointer address. > > As written in the first post the lfree pointer is stucked to an > intermediate address > > I suppose that TCP_SEG and the lfree stucked pointer are related but I > don’t know why. I agree. I would first sort out the segments problem and then see if this persists. Kieran _______________________________________________ lwip-users mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/lwip-users
