Help me with "errno=EINTR Interrupted system call"

Help me with "errno=EINTR Interrupted system call"

Post by Steve Kapp » Thu, 14 May 1998 04:00:00





Quote:> I have a program which is running perfect on Digital Unix, however fails
> reguarly on SUN Solaris 2.5.1. The error message is "errno=EINTR Interrupted
> system call" which is the output of an open system function. The process is an
> infinite loop but the process breaks with the above message after running some
> time. I wonder if I am exceeding some limitation value? I would be gratefull
> if you could help me with this problem.

Are you using signals?  Take a look at sigaction with a flag
of SA_RESTART.

Any function that can return an EINTR should be coded to handle
it appropriately which usually means do the call again.

--
______________________________________________________________________

               Feel free to harass my spam filter :)

 
 
 

Help me with "errno=EINTR Interrupted system call"

Post by Acacio Cru » Sun, 17 May 1998 04:00:00



> Dear All,

> I have a program which is running perfect on Digital Unix, however fails
> reguarly on SUN Solaris 2.5.1. The error message is "errno=EINTR Interrupted
> system call" which is the output of an open system function. The process is an
> infinite loop but the process breaks with the above message after running some
> time. I wonder if I am exceeding some limitation value? I would be gratefull
> if you could help me with this problem.

Aren't you running out of file descriptors?Check the max fd's you have?

-Acacio

 
 
 

Help me with "errno=EINTR Interrupted system call"

Post by Casper H.S. Dik - Network Security Engine » Mon, 18 May 1998 04:00:00


[[ PLEASE DON'T SEND ME EMAIL COPIES OF POSTINGS ]]


>Dear All,
>I have a program which is running perfect on Digital Unix, however fails
>reguarly on SUN Solaris 2.5.1. The error message is "errno=EINTR Interrupted
>system call" which is the output of an open system function. The process is an
>infinite loop but the process breaks with the above message after running some
>time. I wonder if I am exceeding some limitation value? I would be gratefull
>if you could help me with this problem.

System calls can usually fail due to "EINTR"; if you yourself handle
and/or generate signals, you need to make sure the signal handler
is iunstalled in such a manner that the system call is restarted.

I.e., use sigaction, use SA_RESTART; do not use signal().

Casper
--
Expressed in this posting are my opinions.  They are in no way related
to opinions held by my employer, Sun Microsystems.
Statements on Sun products included here are not gospel and may
be fiction rather than truth.