Hi, Everyone.
I think I haved found the reason.
If where somebody meet this problem, maybe it can be referenced.
It is a mistake in my porting.
I used RAW API, it forgot to enable "SYS_LIGHTWEIGHT_PROT".
functions like memp_free(), pbuf_free() should be mask interrupt when it using 
"memp_tab[]". It is globle.
So if you use these function in ISR, it will be destroy the link of pbuf.
Make sure to lock the globle dada.
I hope this can be usedful.

Best regards!
Locke_h




2008-10-27



发件人: [EMAIL PROTECTED]
发送时间: 2008-10-24 17:56:14
收件人: [email protected]
抄送: 
主题: [lwip-users] How can I slow down the speed to receive with RAW API?

Hi, Every one!
My LwIP works on MCU with a 32KB SRAM.(Freescale MCF52235)
I port the "echo" function to my project. 
http://download.savannah.gnu.org/releases/lwip/contrib-1.3.0.zip
lwip/contrib/ports/unix/proj/minimal/echo.c
I connected a client to LwIP, with is made by VC. This tool software has no 
problem.
It can works well with long time.
But sometimes if I make rush data to LwIP. It will report that can not allocate 
pbuf in low_level_input(). And the packets most are droped.
The remained pbuf can not be free by LWIP.
I don't know why.
Could you please offer some advize?
Thank you!
Best Regards!




2008-10-24
_______________________________________________
lwip-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to