"Can't obtain network semaphore"

Till Straumann strauman at slac.stanford.edu
Wed Dec 15 04:37:27 UTC 2004


Ian Caddy wrote:
> What would happen if the network semaphore object id was corrupted.  It 
> wouldn't even get to the section of code to get the mutex, but would 
> return on invalid ID error when it tried to get the object.
> 
> Steve did not mention what the actual return code from the call to the 
> semaphore get, does it correspond to the internal return code of 4?

Yes, Steve did report earlier a return code of 4

> This 
> could have been returned from another earlier function call.

No. _CORE_mutex_Seize() sets this to 0 on entry (in 'trylock').

T.

> 
> Steve, what was the actual sc return code before it called the rtems_panic?
> 
> Ian Caddy
> 
> 
> Till Straumann wrote:
> 
>> Chris Johns wrote:
>>
>>> Till Straumann wrote:
>>>
>>>>
>>>> Are you sure none of those deletes the network semaphore?
>>>>
>>>
>>> If you have RTEMS_FAST_MUTEX defined the semaphore directly accesses 
>>> the score for the mutex. This means _CORE_mutex_Surrender is being 
>>> called.
>>>
>>
>> Sure - but this doesn't matter. His system panics because
>> _CORE_mutex_Seize leaves with a return_code=='4' (CORE_MUTEX_WAS_DELETED)
>>
>> The only way I currently can think of this getting there is
>> by someone calling rtems_semaphore_delete() on the network
>> semaphore id.
>>
>> -- T.
>>
>>





More information about the users mailing list