[ECOS] Re: What causes interrupted network system calls?
Grant Edwards
grant.b.edwards@gmail.com
Wed Oct 28 18:05:00 GMT 2009
On 2009-10-28, Nick Garnett <nickg@ecoscentric.com> wrote:
> Grant Edwards <grant.b.edwards@gmail.com> writes:
>
>> 1) in the same situation we never saw EINTR with the previous
>> network stack.
>
> It is probable that the OpenBSD stack totally ignored signals
> and therefore wouldn't necessarily do the right thing. The
> FreeBSD stack is better integrated with POSIX support.
We're not using POSIX support.
>> 2) EINTR isn't listed as one of the possible return values for
>> send(), but we seem to be getting it:
>> http://ecos.sourceware.org/docs-3.0/ref/net-common-tcpip-manpages-send.html
>
> Very weird. The current FreeBSD documentation also does not
> mention EINTR. However Linux man pages do, as does the POSIX
> standard.
>
> In general net stack calls return EINTR only if the thread is
> broken out of a wait by cyg_thread_release(), and only POSIX
> signal handling generally does that.
We don't have any of the POSIX support enabled.
> If the application is using signals,
AFAIK, it isn't.
> then maybe the signal masks need to be set up differently.
I've just been told that retrying doesn't seem to help. Once
you get an -EINTR, it will happen 5-10 times in a row.
--
Grant Edwards grante Yow! Did you move a lot of
at KOREAN STEAK KNIVES this
visi.com trip, Dingy?
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
More information about the Ecos-discuss
mailing list