|
From: | David Haas |
Subject: | [lwip-members] timeout problems |
Date: | Fri, 21 Mar 2003 14:18:44 -0500 |
User-agent: | Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.4a) Gecko/20030314 |
Hi all,I have run into some nasty little timing problems having to do with the fact that sys_arch_sem_wait() and sys_arch_mbox_fetch() both return 0 if there was a timeout. 1 is therefore the smallest increment of time which can be returned (even if there was no wait at all).
Since over time we have increased our use of semaphores (or at least I have in sockets), I am running into some serious timing errors on my timeouts because even if there was no wait, 1 is returned. That's a whole millisecond of error and on a busy network where tcp_thread is getting lots of messages it really throws off the timing for tcp timers. By the way I found this by using chargen which moves a lot of data.
I just want to let everyone know that I am planning on changing this. If there is a timeout, 0xffffffff will be returned. I will change the Coldfire and Unix ports as well as fix up sys.c. I will also fix sys_arch.doc if necessary.
Regards, David.
[Prev in Thread] | Current Thread | [Next in Thread] |