This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
net: splsoftnet - problems
- To: ecos-discuss <ecos-discuss at sources dot redhat dot com>
- Subject: [ECOS] net: splsoftnet - problems
- From: "Joerg Troeger" <jtroeger at nortelnetworks dot com>
- Date: Fri, 18 Aug 2000 11:32:58 +0100
- Organization: NetServe
- Reply-To: "Joerg Troeger" <jtroeger at nortelnetworks dot com>
I have some concerns related to the "splsoftnet()" function of the TCP/IP stack.
1. splsoftnet may block due to cyg_mutex_lock() - but is called in the
context of the real-time-clock DSR (tcp_fasttimo, tcp_slowtimo).
2. splsoftnet may try to lock a mutex twice!!
Consider a timer interrupt right after calling "cyg_mutex_loc(&softnet_mutex)"
and before returning from "cyg_scheduler_lock()" - it est between line #246 and
#247 of support.c rev. 1.5.
The timer interrupt may call tcp_fasttimo, which calls splsoftnet - which tries to
lock the same mutex once more (this has been seen happen!).
I am quiet not sure how to solve this problems and would be glad if this can be commented!
Jörg Tröger