[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lwip-users] Low-level interface error handling - request/suggestion
From: |
Mike Fleetwood |
Subject: |
[lwip-users] Low-level interface error handling - request/suggestion |
Date: |
Fri, 29 Jul 2016 11:00:05 +0100 |
User-agent: |
Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 |
Hello,
You will have seen my recent problems with UDP sending.
I am using ST's ethernetif.c driver for STM23F427, which occasionally
returns ERR_USE. The reason this return code is used, rather than any
other is explained by ST in the function header:
* @return ERR_OK if the packet could be sent
* an err_t value if the packet couldn't be sent
*
* @note Returning ERR_MEM here if a DMA queue of your MAC is full can
lead to
* strange results. You might consider waiting for space in the
DMA queue
* to become availale since the stack doesn't retry to send a packet
* dropped because of memory failure (except for the TCP timers).
So, my request is: is it possible for future versions of LWIP detect
this return from the low level driver and either impliment some recovery
(presumably short wait, then re-try would allow the DMA buffer to
clear), or, at least report the error in a meaningful way to the higher
layers?
Currently, this error would appear to be fatal.
As to why it should happen in the first place - that is another problem!
Many thanks,
Mike.
--
FACE Systems Ltd
The Old Boat House
Cadgwith
Cornwall TR12 7JX
T:01326 291031
M:07831 401464
- [lwip-users] Low-level interface error handling - request/suggestion,
Mike Fleetwood <=