[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linrad] Re: xlinrad 02.06a / error 23855



Hi Leif,
On Wednesday 19 April 2006 21:08, Leif Asbrink wrote:
> > If I enter Y ( DA STOP/START [1] in par_userint ) everything works fine.
> > If I enter N ( DA STOP/START [0]  in par_userint ) xlinrad issues an
> > error message 23855 when a new signal is selected .
>
> When something goes wrong with the device drivers (which was not
> uncommon at all in the past) Linrad calls err_restart_da(int errcod),
> a routine that tries to close and reopen the output device.
>
> This routine has been incorrect for some time now because of
> a silly mistake of mine but I have not noticed and no one else
> has told me about it. 
I wouldn't  worry too much about it.
I remember a senior developper of IBM's MVS operating system explaining the 
audience that  this  is a universal problem with software because it is 
impossible to test all possible situations that can occur.
> The last line: 
> if(ioctl(audio_out,SNDCTL_DSP_GETOSPACE, &da_info) != -1)lirerr(errcod);
> should be like this:
> if(ioctl(audio_out,SNDCTL_DSP_GETOSPACE, &da_info) == -1)lirerr(errcod);
Thank you very much for this very quick fix. 
Everything is working fine now.
> What is more interesting is why does the output routine lir_dawrite
> hang to issue the call to restart in one case but not the other.
> I do not know the answer but I made some little changes to
> lir_empty_da_device_buffer() that will show up in Linrad-02.07 and
> that possibly eliminate the call to the err_restart routine.
Maybe this could be the start of a new thread about the best tracing tool 
available for linux  :-)

Thanks and best 73,
Pierre / ON5GN

#############################################################
This message is sent to you because you are subscribed to
  the mailing list <linrad@xxxxxxxxxxxxxxxxxxxxx>.
To unsubscribe, E-mail to: <linrad-off@xxxxxxxxxxxxxxxxxxxxx>
To switch to the DIGEST mode, E-mail to <linrad-digest@xxxxxxxxxxxxxxxxxxxxx>
To switch to the INDEX mode, E-mail to <linrad-index@xxxxxxxxxxxxxxxxxxxxx>
Send administrative queries to  <linrad-request@xxxxxxxxxxxxxxxxxxxxx>

LINRADDARNIL