On Tue, 24 Sep 2002, Terry Lambert wrote: > Andriy Gapon wrote: > > I have noticed that it is not uncommon for a multithreaded program that > > invokes a lot of system calls to get EINTR from a syscall even if no > > non-default signal handling is installed and no 'real' signals are > > received. Looks like some syscalls get interrupted by the scheduling > > signal. In my understanding, this should be something hidden from a user. > > Is there any way to restart syscalls interrupted by the scheduling signal > > without returning a libc_r call ? > > Set SA_RESTART in the sa_flags of the sigaction for the scheduling > signal. Use "man sigaction" for details.
Yes, for application installed signal handlers. Try this for library installed signal handlers (patch to -current). http://people.freebsd.org/~deischen/libc_r.diffs -- Dan Eischen To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-hackers" in the body of the message