[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [lwip-users] LOCK/UNLOCK TCIP_CORE
From: |
address@hidden |
Subject: |
Re: [lwip-users] LOCK/UNLOCK TCIP_CORE |
Date: |
Tue, 19 Oct 2021 15:12:54 +0200 |
User-agent: |
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0 |
Am 19.10.2021 um 13:25 schrieb André Lenoir:
> I have an assertion “Function called without core lock failed” at line
> 602 in LwIP/system/OS/sys_arch.
>
> Apparently this occur on calls from
> ethernet_input (…)
> tcpip_timeouts_mbox_fetch(..)
> sys_timeouts_sleeptime(..)
>
> What could explain this assertion?
It means that you're either calling this from the wrong thread (there's
not enough information in your email to tell) or you haven't implemented
LWIP_MARK_TCPIP_THREAD() correctly (the counterpart of
LWIP_ASSERT_CORE_LOCKED()).
However, there must be something wrong in your callstack:
tcpip_timeouts_mbox_fetch() is not called from ethernet_input(). It is
only called from the main loop in tcpip_thread(). If your callstack
above is really like you wrote, I suspect you have coded something
yourself, probably without fully understanding lwIP's threading
requirements?
Regards,
Simon