esp-idf/components/lwip/core
Wu Jian Gang 7f2c6a9d80 Merge branch 'bugfix/tw8770_fix_socket_memory_leak' into 'master'
lwip: fix socket memory leak issue

1. Add socket memory leak debug counter
2. Fix TCP PCB leak issue
    Currently ESP32 support maximum 16 TCP PCBs and all TCP PCB are allocated from heap memory. In some scenario, we may
    have memory leak issue,  for example, the application already created 16 TCP PCB, then it close 5 of them, because the TCP
    state machine, the LWIP core may not free all the 5 TCP PCB immediately, maybe some is in TIME_WAIT status, some is in 
    FIN_WAIT_1 etc. Then the application try to malloc 17th TCP PCB (the application think they just create 12 because they already
    close 5), memp_malloc() will return true because the heap is not out of memory, but actually we got 17 TCP PCB. When the 
    scenario repeat again and again (in our Audio application, it repeat more than 10000 times), more and more TCP PCB will be
    created in the system, each TCP PCB require 200B, then memory leak happen (In Audio application, I saw more than 26 TCP PCB
    are created, and 10*200=2K memory are leaked).

See merge request !223
2016-11-25 13:44:02 +08:00
..
ipv4 ipv6 interface: add branch for ipv6 interface 2016-11-21 11:06:51 +08:00
ipv6 ipv6 interface: add branch for ipv6 interface 2016-11-21 11:06:51 +08:00
def.c Initial public version 2016-08-17 23:08:22 +08:00
dns.c lwip: refractor for lwip 2016-10-27 14:11:01 +08:00
inet_chksum.c Initial public version 2016-08-17 23:08:22 +08:00
init.c make build pass when disable per soc tcp window 2016-10-31 19:38:47 +08:00
ip.c Initial public version 2016-08-17 23:08:22 +08:00
mem.c lwip: refractor for lwip 2016-10-27 14:11:01 +08:00
memp.c lwip: refractor for lwip 2016-10-27 14:11:01 +08:00
netif.c ipv6 interface: add branch for ipv6 interface 2016-11-21 11:06:51 +08:00
pbuf.c lwip: refractor for lwip 2016-10-27 14:11:01 +08:00
raw.c lwip: refractor for lwip 2016-10-27 14:11:01 +08:00
stats.c lwip: refractor for lwip 2016-10-27 14:11:01 +08:00
sys.c Initial public version 2016-08-17 23:08:22 +08:00
tcp.c lwip: update according to review comments 2016-11-21 15:02:36 +08:00
tcp_in.c lwip: refractor for lwip 2016-10-27 14:11:01 +08:00
tcp_out.c lwip: fix socket memory leak issue 2016-11-19 14:57:42 +08:00
timers.c lwip: refractor for lwip 2016-10-27 14:11:01 +08:00
udp.c lwip: refractor for lwip 2016-10-27 14:11:01 +08:00