|
From: | Noam Weissman |
Subject: | Re: [lwip-users] PolarSSL and mbedTLS |
Date: | Thu, 2 Mar 2017 21:49:52 +0000 |
Hi Simon,
I have not completely understood the code in lwip_recvfrom
function as I am not familiar with the underlying code.
If I understood it correctly the function is called when their some data. It reads one pBuf at a time, copy the data from it to the buffer that is passed to it and after that it free's the pBuf.
At the same time it handles the incommoding data, the interrupt handler reads data from
the DMA buffers to other pBuf's... this is going on until (or should) until all the data that should have been read is collected or an error .
What happens inside the d <> while, does it not starve the rest of the code and are pBuf freed so they can be reused inside the interrupt handler ?
I am not sure but it feels like a problem there, or a bug as you said. seems there is a raise condition or something else that happens when the code is running
without breakpoints.
I will do more testing next week and see if I make any progress.
BR, Noam. From: lwip-users <lwip-users-bounces+address@hidden> on behalf of address@hidden <address@hidden>
Sent: Thursday, March 2, 2017 11:24 PM To: Mailing list for lwIP users Subject: Re: [lwip-users] PolarSSL and mbedTLS Noam Weissman wrote:
Up to now, EWOULDBLOCK is based on netconn callback events. I'm in the progress of changing this to be a result of a "tryget" operation on the recvmbox. If there should be a bug in the event callback handling, this should fix it. However, there are many more places where your error should come from, so I'm not convinced my change will fix your issue... Simon |
[Prev in Thread] | Current Thread | [Next in Thread] |