Just to be sure, I've just implemented both SYS_ARCH_PROTECT and SYS_ARCH_UNPROTECT with one global recursive-mutex. Still having the "sock->fd_used != 0" Assertion..
Do we have another way chasing this issue? On Tue, Nov 7, 2017 at 8:47 PM, Itzik Levi <[email protected]> wrote: > Wait, it might be the implementation for SYS_ARCH_PROTECT, SYS_ > ARCH_UNPROTECT. > > I will check. > > On Tue, Nov 7, 2017 at 8:42 PM, Itzik Levi <[email protected]> wrote: > >> Some update: >> >> I've enabled "LWIP_NETCONN_FULLDUPLEX" - needed some work as it requires >> LWIP_NETCON_SEM_PER_THREAD. >> >> So I needed to implement(getting a unique semaphore per thread): >> >> - LWIP_NETCONN_THREAD_SEM_GET() >> - LWIP_NETCONN_THREAD_SEM_ALLOC() >> - LWIP_NETCONN_THREAD_SEM_FREE() >> >> >> Now I cant even reach the corruption issue(not sure if solved or not), as >> I constantly getting another assert after a while : "Assertion >> "sock->fd_used != 0" failed at line 344 in lwip/src/api/sockets.c.". >> >> I'm guessing thats why this feature is in alpha level :) >> >> >> >> >> >> On Tue, Nov 7, 2017 at 7:09 PM, Itzik Levi <[email protected]> wrote: >> >>> Hi Sylvain, >>> >>> Although I am reading and writing from separated threads, I am not doing >>> that in parallel(mutex protected), lwip_recv is never called in >>> parallel to lwip_send. >>> I will try and enable LWIP_NETCONN_FULLDUPLEX to see if it does >>> anything, but I remember its highly experimental at this point. >>> >>> Will report back. >>> >>> On Tue, Nov 7, 2017 at 7:02 PM, Sylvain Rochet <[email protected]> >>> wrote: >>> >>>> Hi Itzik, >>>> >>>> On Tue, Nov 07, 2017 at 06:40:52PM +0200, Itzik Levi wrote: >>>> > Hi Sylvain, >>>> > >>>> > Thanks for the response! >>>> > >>>> > Just tried disabling both CORE_LOCKING and CORE_LOCKING_INPUT and >>>> > unfortunately encountered the same problem. >>>> > >>>> > I'm probably missing something, but what... loss-less stream works >>>> > excellent, without any corruption, might be some kind of internal tcp >>>> queue >>>> > corruption while congested? >>>> >>>> It looks like a thread safety issue, but you seem to do things well >>>> (PPPAPI, pppos_input_tcpip, socket API, rx/tx mutex), but could you try >>>> setting LWIP_NETCONN_FULLDUPLEX since you are using rx and tx from >>>> multiple threads ? >>>> >>>> Sylvain >>>> >>>> _______________________________________________ >>>> lwip-users mailing list >>>> [email protected] >>>> https://lists.nongnu.org/mailman/listinfo/lwip-users >>>> >>> >>> >> >
_______________________________________________ lwip-users mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/lwip-users
