[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lwip-devel] [patch #8737] tcp_timer_needed should use tcpip_timeout
From: |
Sylvain Rochet |
Subject: |
[lwip-devel] [patch #8737] tcp_timer_needed should use tcpip_timeout |
Date: |
Fri, 11 Sep 2015 20:09:55 +0000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Firefox/38.0 Iceweasel/38.2.1 |
Follow-up Comment #5, patch #8737 (project lwip):
Confession time.
I must admit I did it wrong as well. When I got hired at my current job
they were already using lwIP in some products (which were already on
market at this time). Well, they used the lwIP AVR32 port from a very
very -VERY- old Atmel Framework they never took the time to upgrade and
used lwIP 1.3.0 while 1.4.x was released for quite a while. They didn't
understand lwIP RAW API wasn't thread safe (well, thread safety is still
quite an obscure concept) and used the RAW API everywhere. It worked
because we are mostly using UDP, and the UDP FSM doesn't suffer much
from thread safety issues (yes, that's obvious). They didn't even
understand the pbuf chained concept and were stuck to "lwIP doesn't
support packets over > XXX bytes, the packet is corrupted and we only
get a truncated packet if we send more than XXX bytes". (I KID NOT YOU).
I just followed what they did until it hit my head that we were doing
things wrong… terribly wrong… in already sold products for a while…
yikes.
Maybe we should just add in CAPITALS in main RAW API functions
(udp_bind(), udp_send(), tcp_write(), tcp_listent(), …) comment just
above them that they are not thread safe, at least developers who care
about thread safety would be warned the first time they want to use
them.
Sylvain
_______________________________________________________
Reply to this item at:
<http://savannah.nongnu.org/patch/?8737>
_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/