rem: ReleaseSemaphore(&iounit->ListLock);
add: ReleaseSemaphore(&iounit->Lock);
context: FeedReaders ( struct AHIDevUnit *iounit,              struct AHIBase *AHIBase ){  struct AHIRequest *ioreq;  ObtainSemaphore(&iounit->ListLock);  for(ioreq = (struct AHIRequest *)iounit->ReadList.mlh_Head;      ioreq->ahir_Std.io_Message.mn_Node.ln_Succ;      ioreq = (struct AHIRequest *)ioreq->ahir_Std.io_Message.mn_Node.ln_Succ)  {    FillReadBuffer(ioreq, iounit, AHIBase);  }  // Check if Reader-list is empty. If so, stop recording (after a small delay).  if( ! iounit->ReadList.mlh_Head->mln_Succ )  {    if(--iounit->RecordOffDelay == 0)    {      AHI_ControlAudio(iounit->AudioCtrl,          AHIC_Record,FALSE,          TAG_DONE);      iounit->IsRecording = FALSE;    }  }  else  {    iounit->RecordOffDelay = 2;  }  ReleaseSemaphore(&iounit->ListLock);}