Am 27.03.2019 um 20:05 schrieb Terence D:
Hi, I'm using lwIP 1.41 with a Texas Instruments Tiva Launchpad development board (the TM4C1294).
Now that's a really old version of lwIP!
[..] This code is run in the lwIPHostTimerHandler. Which of course is called from the Ethernet interrupt handler.
Wait a minute, "of course"? Have you read this (mostly valid for 1.4.x as well): https://www.nongnu.org/lwip/2_1_x/pitfalls.html
Based on other examples, I see no problem with this.
Ehrm, based on which examples? When running code from ETH interrupt handler, you have to *know* what you are doing! Basically this means: *no* access into lwIP from any other interrupt priority or main loop *unless* the ethernet interrupt is disabled.
However, intermittently, it appears to corrupt the lwIP's tcp.c's tcp_active_pcbs linked list.
And I would have written that as an example if you hadn't watched out for what I wrote in the lines above ;-) Try to clean up your code (in terms of execution threads) and if you can, think about upgrading to a more recent version. Regards, Simon _______________________________________________ lwip-users mailing list lwip-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/lwip-users