[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [gforth] problem with gforth7 and serial access
From: |
Bernd Paysan |
Subject: |
Re: [gforth] problem with gforth7 and serial access |
Date: |
Thu, 22 Mar 2012 16:58:21 +0100 |
User-agent: |
KMail/4.7.2 (Linux/3.1.9-1.4-desktop; KDE/4.7.2; x86_64; ; ) |
Am Donnerstag, 22. März 2012, 16:44:53 schrieb David Kuehling:
> >>>>> "Bernd" == Bernd Paysan <address@hidden> writes:
> > I don't know why the select code should not work on serial lines, this
> > must be a bug in Linux.
>
> Sure, that this is not a bug in Gforth code? Select() is pretty
> difficult to get right. E.g. you must read all input data until read()
> returns EAGAIN, before calling select(). Failing to do so will make
> select() block forever, as select is "edge triggered", and only returns
> if the state of "data available" has a transition.
Are you sure about that? The manpage states the function of select to mark
every file that "is or became ready" for IO. With epoll, you have the
opportunity to select edge or level-triggered events, but select pretty much
specifies level-triggered, at least according to the manpage. Our files are
blocking, so we will never get EAGAIN from read().
Well, maybe it's such a combination, i.e. changing a file to non-blocking and
then try to use key_avail on it, which is going to fail, but worked fine
before.
IIRC, ioctl(FIONREAD) did not work on files, that's why we dropped it.
--
Bernd Paysan
"If you want it done right, you have to do it yourself"
http://bernd-paysan.de/
signature.asc
Description: This is a digitally signed message part.
- [gforth] problem with gforth7 and serial access, kibler, 2012/03/22
- Re: [gforth] problem with gforth7 and serial access, David Kuehling, 2012/03/22
- Re: [gforth] problem with gforth7 and serial access, kibler, 2012/03/22
- Re: [gforth] problem with gforth7 and serial access, Bernd Paysan, 2012/03/22
- Re: [gforth] problem with gforth7 and serial access, kibler, 2012/03/22
- Re: [gforth] problem with gforth7 and serial access, Dennis Ruffer, 2012/03/22
- Re: [gforth] problem with gforth7 and serial access, kibler, 2012/03/22
- Re: [gforth] problem with gforth7 and serial access, Dennis Ruffer, 2012/03/22
- Re: [gforth] problem with gforth7 and serial access, kibler, 2012/03/23
- Re: [gforth] problem with gforth7 and serial access, Dennis Ruffer, 2012/03/23