This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
eCos LWIP thread-safety
- From: "Rob Duncan" <rob dot duncan at designmagnitude dot com>
- To: ecos-discuss at sourceware dot org
- Date: Sun, 20 May 2007 08:56:56 -0700
- Subject: [ECOS] eCos LWIP thread-safety
I'm having some trouble understanding what the thread-safety
requirements for using LWIP are. I've been through the archives on
the LWIP mailing lists where it's explicitly stated that the low-level
APIs are not thread-safe, but I can't find an equivalent description
of the high-level socket interfaces. It appears to depend on how the
specific OS port was done. The reason I'm looking at this is because
I'm getting the following assertion failure:
ASSERT FAIL: <6>pbuf.c[577]pbuf_free() pbuf_free: p->ref > 0
According to the LWIP archives this assertion is often evidence of a
violation of the stack's thread-safety rules. I'm exclusively using
the socket APIs from a single thread, so I'm wondering whether I need
to take any additional steps to satisfy these requirements. Can
someone with a better understanding of the eCos LWIP port comment?
On the other hand, I'm running with a rather miserly buffer
allocation, and I suppose it's possible that I'm tickling some other
bug in the pbuf code.
Any thoughts and suggestions are very appreciated.
Thanks,
Rob.
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss