lwip-users
[Top][All Lists]
Advanced

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

Re: [lwip-users] Implementing sys_arch on lwip 1.3.2


From: Simon Goldschmidt
Subject: Re: [lwip-users] Implementing sys_arch on lwip 1.3.2
Date: Fri, 20 May 2011 10:59:22 +0200

Luca Ottaviano <address@hidden> wrote:
> Hi,
> I'm having a few issues in porting lwip 1.3.2 on BeRTOS
> (www.bertos.org).

If you're doing a new port, I *stronlgy* suggest to use 1.4.0, not 1.3.2, which 
is outdated.

> I have implemented my EMAC driver and the low_level_input() functions.
> I've used BeRTOS facilities to implement the EMAC driver; however,
> whenever I wait inside the driver timeouts are not processed and so TCP
> does not retransmit lost packets.
> 
> From what I can understand, timeouts are handled only in sys_sem_wait()
> or sys_mbox_fetch() calls: when a process is going to block on a
> condition, it starts to process timeouts; if there are none, the process
> really blocks. Is it correct?

That's not really true any more (there may still be bugs in 1.3.2 regarding 
this, I don't remember right now).

The fixed version of this is that for NO_SYS==0, timeouts are only processed 
while the tcpip_thread() function waits for a new message, nowhere else!

>From what I understand, you implemented your driver in the tcpip_thread and 
>are blocking on a semaphore. This is not a good idea.

Simon
-- 
NEU: FreePhone - kostenlos mobil telefonieren!                  
Jetzt informieren: http://www.gmx.net/de/go/freephone



reply via email to

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