Jim Donovan wrote:
I have been working with a single-board computer (TS-7250, using the built-in linux) 
which, about three times per second, sends 8-byte messages out through COM2 to another 
device. Very occasionally (it can go 20 hours without failing) a message doesn't all get 
transmitted. Only 7 of the eight bytes get sent. On these occasions, the status returned 
by write(2) is "Resource temporarily unavailable".

It seems reasonable to try another write(2) to transmit the eighth byte. 
However, it crashes without returning. We tried with COM1 and the same thing 
happened. This is illogical - we are not using handshaking and the UART has no 
way of knowing what is going on at the other end of the line or even whether 
there is anything there. I have dumped termios and the control registers 
immediately before the crash; no corruption or other abnormality is evident.

Before I try a different linux (cut-down debian Potato is available), does 
anyone have any simpler suggestions?

Thanks,

Jim Donovan
I'd be trying to see if its happening after a set time or set number of bytes. I'd also try and blast data out and see if you can cause the failure in a short enough time frame to debug it.
--
SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/
Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html

Reply via email to