Object name recycling problem

Nigel Spon nigel at adi.co.nz
Mon Mar 3 00:32:09 UTC 2003


Hi,

I seem to have run across a problem with the way object names are 
allocated in RTEMS. I have found that a crash I was getting after 
making and deleting several tasks was due to the "name" field of the 
"Objects_control" structure returned by _Objects_Allocate being nil. 
This turns out to be because deleted objects are recycled into the 
Inactive chain of the objects_information block, but if _Objects_Close 
has been called on them the "name" fields of the freed objects have 
been set to nil. When _Objects_Allocate gets around to reallocating a 
previously Closed object, Objects_Open calls _Objects_Copy_Name_Raw 
with a nil destination pointer... and dies for writing to NIL.

Is this a known problem? (I am using a June 2002 snapshot, but the same 
code seems to be in the Feb 2003 snapshot) I can't see what I might be 
doing wrong that would cause this behaviour but if this is my fault 
somehow I would really like to know...

---
“Some will say that they were at one time troubled in sleeping but have 
“recovered” from it, as though awareness were a disease, as perhaps it 
is.”

Nigel Spon
ADInstruments Ltd, Dunedin, NZ



More information about the users mailing list